diff --git a/.cursorrules b/.cursorrules index d2a6d66..df1d946 100644 --- a/.cursorrules +++ b/.cursorrules @@ -6,7 +6,7 @@ When modifying or generating code for this repository, you MUST adhere to the fo - **Never** use `save_entity_graph_from()`, `save_entity_with_comment()`, or any other repository-level methods directly on a `Repository` or `ResolvedRepository` instance to persist entities. - **Why?** Saving via the repository graph API (e.g., `save_entity_graph_from`) executes a full entity graph replacement. If child relations (like execution logs) are not explicitly loaded and re-attached to the graph, the framework will implicitly delete the missing records in the database. -## 2. Use the Entity API (NTTAPI) Exclusively +## 2. Use the Entity API Exclusively - Always perform state transitions or updates directly on the domain entity object itself, and call the generated `.save(&ctx).await` method on the entity. - Example: ```rust @@ -18,3 +18,39 @@ When modifying or generating code for this repository, you MUST adhere to the fo ## 3. Explicit Deletion Only - Data MUST NOT be deleted implicitly. Unless there is an explicit deletion command or `.mark_as_delete()` is explicitly called on an entity, no command should delete any data. + +## 4. ABSOLUTE BAN ON `T::` TOOLS +- Inside the application layer, you are strictly forbidden from calling any stateless utility from the `teaql_tool::T` facade directly. +- All side effects (network, file) and all stateful computations (time, formatting, ID generation) MUST go through the user context (`ctx`). + +## 5. MANDATORY BUSINESS INTENT (`.comment()`) +- Every single tool call must be appended with `.comment("English intent description")`. If you do not provide this, the result is encapsulated in a `MustComment` wrapper and cannot be used, leading to compile errors. + +**Correct Examples:** +```rust +// Pure computation with Context Timezone and intent explanation +let deadline = ctx.time().today().add_days(7).comment("Calculate 7-day grace period for payment"); + +// IO Operation with Audit intent +let data = ctx.file().read(path).comment("Load tenant specific configuration file").await?; +``` + +```rust +let now = T::time().today(); // ERROR: Banned usage, no timezone! +let id = T::id().uuid(); // ERROR: Cannot extract string without .comment()! +let data = std::fs::read(path); // ERROR: Banned IO library! +``` + +## 6. ZERO-CODE LOGGING & DEBUGGING (ENVIRONMENT VARIABLES) +- Do **NOT** insert `println!`, `tracing::info!`, or manually write custom log messages in the application layer code to debug data/SQL issues. +- When you need to investigate SQL execution, entity changes, or tool calls during `cargo run` or `cargo test`, you MUST use the built-in 7 `TEAQL_` environment variables: + - `TEAQL_AUDIT`: Controls entity data change logs (`_silent`, `_summary`, `_full`). + - `TEAQL_SQL`: Controls SQL query logs (`_silent`, `_summary`, `_full`). + - `TEAQL_SQL_TABLES`: Filters SQL logs to specific tables (e.g., `task,task_status`). + - `TEAQL_TOOL`: Controls `ctx` tool usage logs (`_silent`, `_summary`, `_full`). + - `TEAQL_TOOL_FOCUS`: Filters tool logs to specific modules (e.g., `http,file`). + - `TEAQL_SINK`: Output destination (`_stdout`, `_file`, `_both`). + - `TEAQL_SCHEMA`: Controls schema migration (`_verify` [default], `_dryrun`, `_execute`). **Tests modifying schema MUST use `TEAQL_SCHEMA=_execute`.** +- Example: If you want to see all SQL generated for the `task` table during a test, run: + `TEAQL_SCHEMA=_execute TEAQL_SQL=_full TEAQL_SQL_TABLES=task cargo test -- --nocapture` +- The system enforces a strict whitelist. An invalid env var name (like `TEAQL_SQLL`) or invalid value will immediately panic and halt the process. diff --git a/Cargo.toml b/Cargo.toml index ed14494..1549517 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -15,12 +15,13 @@ serde_json = "1" tokio = { version = "1", features = ["macros", "rt-multi-thread"] } # TeaQL runtime packages -teaql-core = "2.0.0" -teaql-runtime = "2.0.0" -teaql-macros = "2.0.0" -teaql-sql = "2.0.0" -teaql-provider-rusqlite = "2.0.0" -teaql-data-service = "2.0.0" +teaql-core = "2.0.1" +teaql-runtime = "2.0.1" +teaql-macros = "2.0.1" +teaql-sql = "2.0.1" +teaql-provider-rusqlite = "2.0.1" +teaql-data-service = "2.0.1" +teaql-tool-core = { path = "../teaql-rust-utils/teaql-tool-core" } # Our generated TeaQL domain logic library robot-kanban = { package = "robot-kanban-service", path = "./generate-lib/lib" } @@ -33,9 +34,3 @@ codegen-units = 1 panic = "abort" strip = true -[patch.crates-io] -teaql-core = { path = "../teaql-rs/teaql-core" } -teaql-runtime = { path = "../teaql-rs/teaql-runtime" } -teaql-sql = { path = "../teaql-rs/teaql-sql" } -teaql-provider-rusqlite = { path = "../teaql-rs/teaql-provider-rusqlite" } -teaql-data-service = { path = "../teaql-rs/teaql-data-service" } diff --git a/README.md b/README.md index fa1fe1d..7820333 100644 --- a/README.md +++ b/README.md @@ -126,6 +126,32 @@ TeaQL propagates comments through nested queries, facets, and aggregates, so eve --- +## Zero-Code Logging & Debugging + +TeaQL provides 7 environment variables to control the runtime behavior, schema migrations, and logging outputs—without modifying a single line of code. All builtin values are prefixed with an underscore (`_`) to avoid collisions with your entity names. + +| Environment Variable | Description | Default | Allowed Values | +|---|---|---|---| +| `TEAQL_AUDIT` | Entity data change logs | `_full` | `_silent`, `_summary`, `_full` | +| `TEAQL_SQL` | SQL query logs | `_silent` | `_silent`, `_summary`, `_full` | +| `TEAQL_SQL_TABLES` | Filter SQL logs to specific tables | (All tables) | `task,task_status`, etc. | +| `TEAQL_TOOL` | `ctx` tool usage logs (HTTP, File, etc.) | `_silent` | `_silent`, `_summary`, `_full` | +| `TEAQL_TOOL_FOCUS` | Filter tool logs to specific modules | (All modules) | `http,money`, etc. | +| `TEAQL_SINK` | Output destination | `_both` | `_stdout`, `_file`, `_both` | +| `TEAQL_SCHEMA` | Schema migration & verification mode | **`_verify`** | `_verify`, `_dryrun`, `_execute` | + +**Development / AI Assistant Debugging:** +To run tests and see exactly what SQL statements are generated for a specific table: +```bash +# Auto-apply schema changes, log all SQL for the 'task' table +TEAQL_SCHEMA=_execute TEAQL_SQL=_full TEAQL_SQL_TABLES=task cargo test -- --nocapture +``` + +**Production Safety:** +The system enforces a strict whitelist. If you provide an unknown environment variable (e.g., `TEAQL_SQLL`) or an invalid value, the application will panic immediately at startup and refuse to run. The default `TEAQL_SCHEMA=_verify` ensures that the app will not blindly modify your production schema. + +--- + ## What Is TeaQL? TeaQL applications are composed of three layers. diff --git a/actual-log.txt b/actual-log.txt new file mode 100644 index 0000000..dd54a55 --- /dev/null +++ b/actual-log.txt @@ -0,0 +1,1182 @@ + +========== Starting Automated Mission Simulation ========== + +>>> Executing command: Review Mission Timeline + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_status().comment("Load task statuses for cache").execute_for_list(&ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task statuses for cache] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[INFO]-TeaQL traces one business request into generated SQL, facets, and audit records. + [TIME]-[philip]-[INFO]-System successfully initialized. + [TIME]-[philip]-[INFO]-Pre-loaded SQLite database 'robot_kanban.db'. + [TIME]-[philip]-[INFO]-TeaQL v1.0.3: Comment Propagation is fully active. + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Review Mission Timeline' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Review Mission Timeline'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Mission Timeline'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 1) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Mission Timeline'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (1, 'Review Mission Timeline', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(1)] CREATED. [Create task 'Review Mission Timeline'] {id: [NULL ➔ 1], name: [NULL ➔ 'Review Mission Timeline'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Mission Timeline' -> Create task 'Review Mission Timeline'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (1, 'CREATED', 'Task ''Review Mission Timeline'' created.', 1, 1) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(1)] CREATED. [Create task 'Review Mission Timeline' -> Create task 'Review Mission Timeline'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Review Mission Timeline' created.'], id: [NULL ➔ 1], task_id: [NULL ➔ 1], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Review Mission Timeline' created. [Create task 'Review Mission Timeline' -> Create task 'Review Mission Timeline'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Review Mission Timeline' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 1 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Validate Payload Configuration + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Validate Payload Configuration' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Validate Payload Configuration'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Validate Payload Configuration'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 2) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Validate Payload Configuration'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (2, 'Validate Payload Configuration', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(2)] CREATED. [Create task 'Validate Payload Configuration'] {id: [NULL ➔ 2], name: [NULL ➔ 'Validate Payload Configuration'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Validate Payload Configuration' -> Create task 'Validate Payload Configuration'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (2, 'CREATED', 'Task ''Validate Payload Configuration'' created.', 1, 2) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(2)] CREATED. [Create task 'Validate Payload Configuration' -> Create task 'Validate Payload Configuration'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Validate Payload Configuration' created.'], id: [NULL ➔ 2], task_id: [NULL ➔ 2], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Validate Payload Configuration' created. [Create task 'Validate Payload Configuration' -> Create task 'Validate Payload Configuration'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Validate Payload Configuration' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [2 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 2 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Verify Flight Software Build + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Verify Flight Software Build' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Verify Flight Software Build'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Verify Flight Software Build'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 3) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Verify Flight Software Build'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (3, 'Verify Flight Software Build', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(3)] CREATED. [Create task 'Verify Flight Software Build'] {id: [NULL ➔ 3], name: [NULL ➔ 'Verify Flight Software Build'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Verify Flight Software Build' -> Create task 'Verify Flight Software Build'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (3, 'CREATED', 'Task ''Verify Flight Software Build'' created.', 1, 3) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(3)] CREATED. [Create task 'Verify Flight Software Build' -> Create task 'Verify Flight Software Build'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Verify Flight Software Build' created.'], id: [NULL ➔ 3], task_id: [NULL ➔ 3], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Verify Flight Software Build' created. [Create task 'Verify Flight Software Build' -> Create task 'Verify Flight Software Build'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Verify Flight Software Build' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [3 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 3 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Calibrate Guidance System + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Calibrate Guidance System' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Calibrate Guidance System'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Calibrate Guidance System'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 4) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Calibrate Guidance System'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (4, 'Calibrate Guidance System', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(4)] CREATED. [Create task 'Calibrate Guidance System'] {id: [NULL ➔ 4], name: [NULL ➔ 'Calibrate Guidance System'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Calibrate Guidance System' -> Create task 'Calibrate Guidance System'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (4, 'CREATED', 'Task ''Calibrate Guidance System'' created.', 1, 4) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(4)] CREATED. [Create task 'Calibrate Guidance System' -> Create task 'Calibrate Guidance System'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Calibrate Guidance System' created.'], id: [NULL ➔ 4], task_id: [NULL ➔ 4], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Calibrate Guidance System' created. [Create task 'Calibrate Guidance System' -> Create task 'Calibrate Guidance System'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Calibrate Guidance System' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [4 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 4 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Load Flight Parameters + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Load Flight Parameters' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Load Flight Parameters'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Load Flight Parameters'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 5) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Load Flight Parameters'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (5, 'Load Flight Parameters', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(5)] CREATED. [Create task 'Load Flight Parameters'] {id: [NULL ➔ 5], name: [NULL ➔ 'Load Flight Parameters'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Load Flight Parameters' -> Create task 'Load Flight Parameters'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (5, 'CREATED', 'Task ''Load Flight Parameters'' created.', 1, 5) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(5)] CREATED. [Create task 'Load Flight Parameters' -> Create task 'Load Flight Parameters'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Load Flight Parameters' created.'], id: [NULL ➔ 5], task_id: [NULL ➔ 5], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Load Flight Parameters' created. [Create task 'Load Flight Parameters' -> Create task 'Load Flight Parameters'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Load Flight Parameters' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [5 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 5 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Initialize Ground Telemetry + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Initialize Ground Telemetry' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Initialize Ground Telemetry'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Initialize Ground Telemetry'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 6) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Initialize Ground Telemetry'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (6, 'Initialize Ground Telemetry', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(6)] CREATED. [Create task 'Initialize Ground Telemetry'] {id: [NULL ➔ 6], name: [NULL ➔ 'Initialize Ground Telemetry'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Initialize Ground Telemetry' -> Create task 'Initialize Ground Telemetry'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (6, 'CREATED', 'Task ''Initialize Ground Telemetry'' created.', 1, 6) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(6)] CREATED. [Create task 'Initialize Ground Telemetry' -> Create task 'Initialize Ground Telemetry'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Initialize Ground Telemetry' created.'], id: [NULL ➔ 6], task_id: [NULL ➔ 6], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Initialize Ground Telemetry' created. [Create task 'Initialize Ground Telemetry' -> Create task 'Initialize Ground Telemetry'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Initialize Ground Telemetry' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [6 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 6 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Review Telemetry Anomaly + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Review Telemetry Anomaly' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Review Telemetry Anomaly'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Telemetry Anomaly'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 7) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Telemetry Anomaly'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (7, 'Review Telemetry Anomaly', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(7)] CREATED. [Create task 'Review Telemetry Anomaly'] {id: [NULL ➔ 7], name: [NULL ➔ 'Review Telemetry Anomaly'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Telemetry Anomaly' -> Create task 'Review Telemetry Anomaly'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (7, 'CREATED', 'Task ''Review Telemetry Anomaly'' created.', 1, 7) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(7)] CREATED. [Create task 'Review Telemetry Anomaly' -> Create task 'Review Telemetry Anomaly'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Review Telemetry Anomaly' created.'], id: [NULL ➔ 7], task_id: [NULL ➔ 7], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Review Telemetry Anomaly' created. [Create task 'Review Telemetry Anomaly' -> Create task 'Review Telemetry Anomaly'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Review Telemetry Anomaly' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [7 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 7 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Review Launch Criteria + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Review Launch Criteria' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Review Launch Criteria'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Launch Criteria'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 8) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Launch Criteria'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (8, 'Review Launch Criteria', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(8)] CREATED. [Create task 'Review Launch Criteria'] {id: [NULL ➔ 8], name: [NULL ➔ 'Review Launch Criteria'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Launch Criteria' -> Create task 'Review Launch Criteria'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (8, 'CREATED', 'Task ''Review Launch Criteria'' created.', 1, 8) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(8)] CREATED. [Create task 'Review Launch Criteria' -> Create task 'Review Launch Criteria'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Review Launch Criteria' created.'], id: [NULL ➔ 8], task_id: [NULL ➔ 8], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Review Launch Criteria' created. [Create task 'Review Launch Criteria' -> Create task 'Review Launch Criteria'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Review Launch Criteria' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [8 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 8 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Range Safety Check + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Range Safety Check' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Range Safety Check'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Range Safety Check'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 9) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Range Safety Check'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (9, 'Range Safety Check', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(9)] CREATED. [Create task 'Range Safety Check'] {id: [NULL ➔ 9], name: [NULL ➔ 'Range Safety Check'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Range Safety Check' -> Create task 'Range Safety Check'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (9, 'CREATED', 'Task ''Range Safety Check'' created.', 1, 9) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(9)] CREATED. [Create task 'Range Safety Check' -> Create task 'Range Safety Check'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Range Safety Check' created.'], id: [NULL ➔ 9], task_id: [NULL ➔ 9], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Range Safety Check' created. [Create task 'Range Safety Check' -> Create task 'Range Safety Check'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Range Safety Check' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [9 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 9 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Begin Propellant Loading + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Begin Propellant Loading' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Begin Propellant Loading'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Begin Propellant Loading'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 10) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Begin Propellant Loading'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (10, 'Begin Propellant Loading', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(10)] CREATED. [Create task 'Begin Propellant Loading'] {id: [NULL ➔ 10], name: [NULL ➔ 'Begin Propellant Loading'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Begin Propellant Loading' -> Create task 'Begin Propellant Loading'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (10, 'CREATED', 'Task ''Begin Propellant Loading'' created.', 1, 10) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(10)] CREATED. [Create task 'Begin Propellant Loading' -> Create task 'Begin Propellant Loading'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Begin Propellant Loading' created.'], id: [NULL ➔ 10], task_id: [NULL ➔ 10], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Begin Propellant Loading' created. [Create task 'Begin Propellant Loading' -> Create task 'Begin Propellant Loading'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Begin Propellant Loading' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [10 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 10 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Complete Cryogenic Fueling + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Complete Cryogenic Fueling' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Complete Cryogenic Fueling'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Complete Cryogenic Fueling'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 11) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Complete Cryogenic Fueling'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (11, 'Complete Cryogenic Fueling', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(11)] CREATED. [Create task 'Complete Cryogenic Fueling'] {id: [NULL ➔ 11], name: [NULL ➔ 'Complete Cryogenic Fueling'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Complete Cryogenic Fueling' -> Create task 'Complete Cryogenic Fueling'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (11, 'CREATED', 'Task ''Complete Cryogenic Fueling'' created.', 1, 11) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(11)] CREATED. [Create task 'Complete Cryogenic Fueling' -> Create task 'Complete Cryogenic Fueling'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Complete Cryogenic Fueling' created.'], id: [NULL ➔ 11], task_id: [NULL ➔ 11], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Complete Cryogenic Fueling' created. [Create task 'Complete Cryogenic Fueling' -> Create task 'Complete Cryogenic Fueling'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Complete Cryogenic Fueling' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [11 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 11 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Arm Flight Termination System + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Arm Flight Termination System' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Arm Flight Termination System'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Arm Flight Termination System'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 12) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Arm Flight Termination System'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (12, 'Arm Flight Termination System', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(12)] CREATED. [Create task 'Arm Flight Termination System'] {id: [NULL ➔ 12], name: [NULL ➔ 'Arm Flight Termination System'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Arm Flight Termination System' -> Create task 'Arm Flight Termination System'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (12, 'CREATED', 'Task ''Arm Flight Termination System'' created.', 1, 12) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(12)] CREATED. [Create task 'Arm Flight Termination System' -> Create task 'Arm Flight Termination System'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Arm Flight Termination System' created.'], id: [NULL ➔ 12], task_id: [NULL ➔ 12], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Arm Flight Termination System' created. [Create task 'Arm Flight Termination System' -> Create task 'Arm Flight Termination System'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Arm Flight Termination System' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [12 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 12 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Conduct GO/NO-GO Poll + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Conduct GO/NO-GO Poll' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Conduct GO/NO-GO Poll'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Conduct GO/NO-GO Poll'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 13) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Conduct GO/NO-GO Poll'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (13, 'Conduct GO/NO-GO Poll', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(13)] CREATED. [Create task 'Conduct GO/NO-GO Poll'] {id: [NULL ➔ 13], name: [NULL ➔ 'Conduct GO/NO-GO Poll'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Conduct GO/NO-GO Poll' -> Create task 'Conduct GO/NO-GO Poll'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (13, 'CREATED', 'Task ''Conduct GO/NO-GO Poll'' created.', 1, 13) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(13)] CREATED. [Create task 'Conduct GO/NO-GO Poll' -> Create task 'Conduct GO/NO-GO Poll'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Conduct GO/NO-GO Poll' created.'], id: [NULL ➔ 13], task_id: [NULL ➔ 13], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Conduct GO/NO-GO Poll' created. [Create task 'Conduct GO/NO-GO Poll' -> Create task 'Conduct GO/NO-GO Poll'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Conduct GO/NO-GO Poll' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [13 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 13 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Start Terminal Countdown + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Start Terminal Countdown' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Start Terminal Countdown'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Start Terminal Countdown'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 14) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Start Terminal Countdown'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (14, 'Start Terminal Countdown', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(14)] CREATED. [Create task 'Start Terminal Countdown'] {id: [NULL ➔ 14], name: [NULL ➔ 'Start Terminal Countdown'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Start Terminal Countdown' -> Create task 'Start Terminal Countdown'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (14, 'CREATED', 'Task ''Start Terminal Countdown'' created.', 1, 14) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(14)] CREATED. [Create task 'Start Terminal Countdown' -> Create task 'Start Terminal Countdown'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Start Terminal Countdown' created.'], id: [NULL ➔ 14], task_id: [NULL ➔ 14], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Start Terminal Countdown' created. [Create task 'Start Terminal Countdown' -> Create task 'Start Terminal Countdown'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Start Terminal Countdown' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [14 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 14 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Execute Hold-Down Release + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Execute Hold-Down Release' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Execute Hold-Down Release'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Execute Hold-Down Release'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 15) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Execute Hold-Down Release'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (15, 'Execute Hold-Down Release', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(15)] CREATED. [Create task 'Execute Hold-Down Release'] {id: [NULL ➔ 15], name: [NULL ➔ 'Execute Hold-Down Release'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Execute Hold-Down Release' -> Create task 'Execute Hold-Down Release'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (15, 'CREATED', 'Task ''Execute Hold-Down Release'' created.', 1, 15) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(15)] CREATED. [Create task 'Execute Hold-Down Release' -> Create task 'Execute Hold-Down Release'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Execute Hold-Down Release' created.'], id: [NULL ➔ 15], task_id: [NULL ➔ 15], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Execute Hold-Down Release' created. [Create task 'Execute Hold-Down Release' -> Create task 'Execute Hold-Down Release'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Execute Hold-Down Release' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [15 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 15 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Confirm Orbital Insertion + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Confirm Orbital Insertion' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Confirm Orbital Insertion'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Confirm Orbital Insertion'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 16) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Confirm Orbital Insertion'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (16, 'Confirm Orbital Insertion', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(16)] CREATED. [Create task 'Confirm Orbital Insertion'] {id: [NULL ➔ 16], name: [NULL ➔ 'Confirm Orbital Insertion'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Confirm Orbital Insertion' -> Create task 'Confirm Orbital Insertion'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (16, 'CREATED', 'Task ''Confirm Orbital Insertion'' created.', 1, 16) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(16)] CREATED. [Create task 'Confirm Orbital Insertion' -> Create task 'Confirm Orbital Insertion'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Confirm Orbital Insertion' created.'], id: [NULL ➔ 16], task_id: [NULL ➔ 16], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Confirm Orbital Insertion' created. [Create task 'Confirm Orbital Insertion' -> Create task 'Confirm Orbital Insertion'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Confirm Orbital Insertion' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 16 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: /mv 1 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(1).comment("Load task 1 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 1 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 1)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Review Mission Timeline' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' PLANNED => READY] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 1) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' PLANNED => READY] - [1 rows affected] + UPDATE task_data SET status = 1002, version = 2 WHERE id = 1 AND version = 1 + [TIME]-[philip]-[AUDIT]-Entity [Task(1)] UPDATED. [DOMAIN: Move 'Review Mission Timeline' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (17, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 1) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(17)] CREATED. [DOMAIN: Move 'Review Mission Timeline' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 17], task_id: [NULL ➔ 1], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Review Mission Timeline' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 1 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [2 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 15 | Ready: 1 | Executing: 0 | Verified: 0 + +>>> Executing command: /mv 1 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(1).comment("Load task 1 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 1 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 1)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Review Mission Timeline' READY => EXECUTING + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' READY => EXECUTING] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 1) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' READY => EXECUTING] - [1 rows affected] + UPDATE task_data SET status = 1003, version = 3 WHERE id = 1 AND version = 2 + [TIME]-[philip]-[AUDIT]-Entity [Task(1)] UPDATED. [DOMAIN: Move 'Review Mission Timeline' READY => EXECUTING] {status: [READY ➔ EXECUTING]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (18, 'STATUS_CHANGED', 'Status changed from READY to EXECUTING.', 1, 1) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(18)] CREATED. [DOMAIN: Move 'Review Mission Timeline' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 18], task_id: [NULL ➔ 1], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Review Mission Timeline' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 1 to 'EXECUTING' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [2 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 15 | Ready: 0 | Executing: 1 | Verified: 0 + +>>> Executing command: /mv 1 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(1).comment("Load task 1 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 1 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 1)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Review Mission Timeline' EXECUTING => VERIFIED + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' EXECUTING => VERIFIED] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 1) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' EXECUTING => VERIFIED] - [1 rows affected] + UPDATE task_data SET status = 1004, version = 4 WHERE id = 1 AND version = 3 + [TIME]-[philip]-[AUDIT]-Entity [Task(1)] UPDATED. [DOMAIN: Move 'Review Mission Timeline' EXECUTING => VERIFIED] {status: [EXECUTING ➔ VERIFIED]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (19, 'STATUS_CHANGED', 'Status changed from EXECUTING to VERIFIED.', 1, 1) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(19)] CREATED. [DOMAIN: Move 'Review Mission Timeline' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from EXECUTING to VERIFIED.'], id: [NULL ➔ 19], task_id: [NULL ➔ 1], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from EXECUTING to VERIFIED. [DOMAIN: Move 'Review Mission Timeline' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 1 to 'VERIFIED' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [2 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 15 | Ready: 0 | Executing: 0 | Verified: 1 + +>>> Executing command: /mv 2 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(2).comment("Load task 2 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 2 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 2)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Validate Payload Configuration' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' PLANNED => READY] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 2) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' PLANNED => READY] - [1 rows affected] + UPDATE task_data SET status = 1002, version = 2 WHERE id = 2 AND version = 1 + [TIME]-[philip]-[AUDIT]-Entity [Task(2)] UPDATED. [DOMAIN: Move 'Validate Payload Configuration' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (20, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 2) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(20)] CREATED. [DOMAIN: Move 'Validate Payload Configuration' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 20], task_id: [NULL ➔ 2], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Validate Payload Configuration' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 2 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 14 | Ready: 1 | Executing: 0 | Verified: 1 + +>>> Executing command: /mv 2 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(2).comment("Load task 2 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 2 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 2)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Validate Payload Configuration' READY => EXECUTING + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' READY => EXECUTING] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 2) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' READY => EXECUTING] - [1 rows affected] + UPDATE task_data SET status = 1003, version = 3 WHERE id = 2 AND version = 2 + [TIME]-[philip]-[AUDIT]-Entity [Task(2)] UPDATED. [DOMAIN: Move 'Validate Payload Configuration' READY => EXECUTING] {status: [READY ➔ EXECUTING]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (21, 'STATUS_CHANGED', 'Status changed from READY to EXECUTING.', 1, 2) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(21)] CREATED. [DOMAIN: Move 'Validate Payload Configuration' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 21], task_id: [NULL ➔ 2], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Validate Payload Configuration' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 2 to 'EXECUTING' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 14 | Ready: 0 | Executing: 1 | Verified: 1 + +>>> Executing command: /mv 2 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(2).comment("Load task 2 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 2 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 2)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Validate Payload Configuration' EXECUTING => VERIFIED + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' EXECUTING => VERIFIED] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 2) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' EXECUTING => VERIFIED] - [1 rows affected] + UPDATE task_data SET status = 1004, version = 4 WHERE id = 2 AND version = 3 + [TIME]-[philip]-[AUDIT]-Entity [Task(2)] UPDATED. [DOMAIN: Move 'Validate Payload Configuration' EXECUTING => VERIFIED] {status: [EXECUTING ➔ VERIFIED]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (22, 'STATUS_CHANGED', 'Status changed from EXECUTING to VERIFIED.', 1, 2) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(22)] CREATED. [DOMAIN: Move 'Validate Payload Configuration' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from EXECUTING to VERIFIED.'], id: [NULL ➔ 22], task_id: [NULL ➔ 2], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from EXECUTING to VERIFIED. [DOMAIN: Move 'Validate Payload Configuration' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 2 to 'VERIFIED' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [2 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 14 | Ready: 0 | Executing: 0 | Verified: 2 + +>>> Executing command: /mv 3 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(3).comment("Load task 3 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 3 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 3)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Verify Flight Software Build' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' PLANNED => READY] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 3) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' PLANNED => READY] - [1 rows affected] + UPDATE task_data SET status = 1002, version = 2 WHERE id = 3 AND version = 1 + [TIME]-[philip]-[AUDIT]-Entity [Task(3)] UPDATED. [DOMAIN: Move 'Verify Flight Software Build' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (23, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 3) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(23)] CREATED. [DOMAIN: Move 'Verify Flight Software Build' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 23], task_id: [NULL ➔ 3], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Verify Flight Software Build' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 3 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 13 | Ready: 1 | Executing: 0 | Verified: 2 + +>>> Executing command: /mv 3 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(3).comment("Load task 3 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 3 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 3)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Verify Flight Software Build' READY => EXECUTING + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' READY => EXECUTING] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 3) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' READY => EXECUTING] - [1 rows affected] + UPDATE task_data SET status = 1003, version = 3 WHERE id = 3 AND version = 2 + [TIME]-[philip]-[AUDIT]-Entity [Task(3)] UPDATED. [DOMAIN: Move 'Verify Flight Software Build' READY => EXECUTING] {status: [READY ➔ EXECUTING]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (24, 'STATUS_CHANGED', 'Status changed from READY to EXECUTING.', 1, 3) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(24)] CREATED. [DOMAIN: Move 'Verify Flight Software Build' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 24], task_id: [NULL ➔ 3], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Verify Flight Software Build' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 3 to 'EXECUTING' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 13 | Ready: 0 | Executing: 1 | Verified: 2 + +>>> Executing command: /mv 3 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(3).comment("Load task 3 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 3 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 3)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Verify Flight Software Build' EXECUTING => VERIFIED + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' EXECUTING => VERIFIED] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 3) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' EXECUTING => VERIFIED] - [1 rows affected] + UPDATE task_data SET status = 1004, version = 4 WHERE id = 3 AND version = 3 + [TIME]-[philip]-[AUDIT]-Entity [Task(3)] UPDATED. [DOMAIN: Move 'Verify Flight Software Build' EXECUTING => VERIFIED] {status: [EXECUTING ➔ VERIFIED]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (25, 'STATUS_CHANGED', 'Status changed from EXECUTING to VERIFIED.', 1, 3) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(25)] CREATED. [DOMAIN: Move 'Verify Flight Software Build' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from EXECUTING to VERIFIED.'], id: [NULL ➔ 25], task_id: [NULL ➔ 3], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from EXECUTING to VERIFIED. [DOMAIN: Move 'Verify Flight Software Build' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 3 to 'VERIFIED' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [2 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 13 | Ready: 0 | Executing: 0 | Verified: 3 + +>>> Executing command: /mv 4 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(4).comment("Load task 4 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 4 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 4)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Calibrate Guidance System' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' PLANNED => READY] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 4) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' PLANNED => READY] - [1 rows affected] + UPDATE task_data SET status = 1002, version = 2 WHERE id = 4 AND version = 1 + [TIME]-[philip]-[AUDIT]-Entity [Task(4)] UPDATED. [DOMAIN: Move 'Calibrate Guidance System' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (26, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 4) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(26)] CREATED. [DOMAIN: Move 'Calibrate Guidance System' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 26], task_id: [NULL ➔ 4], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Calibrate Guidance System' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 4 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 12 | Ready: 1 | Executing: 0 | Verified: 3 + +>>> Executing command: /mv 4 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(4).comment("Load task 4 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 4 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 4)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Calibrate Guidance System' READY => EXECUTING + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' READY => EXECUTING] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 4) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' READY => EXECUTING] - [1 rows affected] + UPDATE task_data SET status = 1003, version = 3 WHERE id = 4 AND version = 2 + [TIME]-[philip]-[AUDIT]-Entity [Task(4)] UPDATED. [DOMAIN: Move 'Calibrate Guidance System' READY => EXECUTING] {status: [READY ➔ EXECUTING]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (27, 'STATUS_CHANGED', 'Status changed from READY to EXECUTING.', 1, 4) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(27)] CREATED. [DOMAIN: Move 'Calibrate Guidance System' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 27], task_id: [NULL ➔ 4], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Calibrate Guidance System' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 4 to 'EXECUTING' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 12 | Ready: 0 | Executing: 1 | Verified: 3 + +>>> Executing command: /mv 4 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(4).comment("Load task 4 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 4 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 4)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Calibrate Guidance System' EXECUTING => VERIFIED + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' EXECUTING => VERIFIED] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 4) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' EXECUTING => VERIFIED] - [1 rows affected] + UPDATE task_data SET status = 1004, version = 4 WHERE id = 4 AND version = 3 + [TIME]-[philip]-[AUDIT]-Entity [Task(4)] UPDATED. [DOMAIN: Move 'Calibrate Guidance System' EXECUTING => VERIFIED] {status: [EXECUTING ➔ VERIFIED]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (28, 'STATUS_CHANGED', 'Status changed from EXECUTING to VERIFIED.', 1, 4) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(28)] CREATED. [DOMAIN: Move 'Calibrate Guidance System' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from EXECUTING to VERIFIED.'], id: [NULL ➔ 28], task_id: [NULL ➔ 4], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from EXECUTING to VERIFIED. [DOMAIN: Move 'Calibrate Guidance System' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 4 to 'VERIFIED' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [2 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 12 | Ready: 0 | Executing: 0 | Verified: 4 + +>>> Executing command: /mv 5 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(5).comment("Load task 5 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 5 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 5)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Load Flight Parameters' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Load Flight Parameters' PLANNED => READY] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 5) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Load Flight Parameters' PLANNED => READY] - [1 rows affected] + UPDATE task_data SET status = 1002, version = 2 WHERE id = 5 AND version = 1 + [TIME]-[philip]-[AUDIT]-Entity [Task(5)] UPDATED. [DOMAIN: Move 'Load Flight Parameters' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Load Flight Parameters' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (29, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 5) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(29)] CREATED. [DOMAIN: Move 'Load Flight Parameters' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 29], task_id: [NULL ➔ 5], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Load Flight Parameters' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 5 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 11 | Ready: 1 | Executing: 0 | Verified: 4 + +>>> Executing command: /mv 5 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(5).comment("Load task 5 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 5 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 5)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Load Flight Parameters' READY => EXECUTING + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Load Flight Parameters' READY => EXECUTING] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 5) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Load Flight Parameters' READY => EXECUTING] - [1 rows affected] + UPDATE task_data SET status = 1003, version = 3 WHERE id = 5 AND version = 2 + [TIME]-[philip]-[AUDIT]-Entity [Task(5)] UPDATED. [DOMAIN: Move 'Load Flight Parameters' READY => EXECUTING] {status: [READY ➔ EXECUTING]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Load Flight Parameters' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (30, 'STATUS_CHANGED', 'Status changed from READY to EXECUTING.', 1, 5) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(30)] CREATED. [DOMAIN: Move 'Load Flight Parameters' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 30], task_id: [NULL ➔ 5], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Load Flight Parameters' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 5 to 'EXECUTING' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 11 | Ready: 0 | Executing: 1 | Verified: 4 + +>>> Executing command: /mv 6 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(6).comment("Load task 6 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 6 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 6)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Initialize Ground Telemetry' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Initialize Ground Telemetry' PLANNED => READY] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 6) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Initialize Ground Telemetry' PLANNED => READY] - [1 rows affected] + UPDATE task_data SET status = 1002, version = 2 WHERE id = 6 AND version = 1 + [TIME]-[philip]-[AUDIT]-Entity [Task(6)] UPDATED. [DOMAIN: Move 'Initialize Ground Telemetry' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Initialize Ground Telemetry' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (31, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 6) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(31)] CREATED. [DOMAIN: Move 'Initialize Ground Telemetry' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 31], task_id: [NULL ➔ 6], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Initialize Ground Telemetry' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 6 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 10 | Ready: 1 | Executing: 1 | Verified: 4 + +>>> Executing command: /mv 6 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(6).comment("Load task 6 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 6 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 6)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Initialize Ground Telemetry' READY => EXECUTING + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Initialize Ground Telemetry' READY => EXECUTING] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 6) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Initialize Ground Telemetry' READY => EXECUTING] - [1 rows affected] + UPDATE task_data SET status = 1003, version = 3 WHERE id = 6 AND version = 2 + [TIME]-[philip]-[AUDIT]-Entity [Task(6)] UPDATED. [DOMAIN: Move 'Initialize Ground Telemetry' READY => EXECUTING] {status: [READY ➔ EXECUTING]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Initialize Ground Telemetry' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (32, 'STATUS_CHANGED', 'Status changed from READY to EXECUTING.', 1, 6) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(32)] CREATED. [DOMAIN: Move 'Initialize Ground Telemetry' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 32], task_id: [NULL ➔ 6], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Initialize Ground Telemetry' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 6 to 'EXECUTING' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 10 | Ready: 0 | Executing: 2 | Verified: 4 + +>>> Executing command: /mv 7 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(7).comment("Load task 7 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 7 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 7)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Review Telemetry Anomaly' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Telemetry Anomaly' PLANNED => READY] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 7) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Telemetry Anomaly' PLANNED => READY] - [1 rows affected] + UPDATE task_data SET status = 1002, version = 2 WHERE id = 7 AND version = 1 + [TIME]-[philip]-[AUDIT]-Entity [Task(7)] UPDATED. [DOMAIN: Move 'Review Telemetry Anomaly' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Telemetry Anomaly' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (33, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 7) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(33)] CREATED. [DOMAIN: Move 'Review Telemetry Anomaly' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 33], task_id: [NULL ➔ 7], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Review Telemetry Anomaly' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 7 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 9 | Ready: 1 | Executing: 2 | Verified: 4 + +>>> Executing command: /mv 7 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(7).comment("Load task 7 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 7 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 7)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Review Telemetry Anomaly' READY => EXECUTING + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Telemetry Anomaly' READY => EXECUTING] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 7) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Telemetry Anomaly' READY => EXECUTING] - [1 rows affected] + UPDATE task_data SET status = 1003, version = 3 WHERE id = 7 AND version = 2 + [TIME]-[philip]-[AUDIT]-Entity [Task(7)] UPDATED. [DOMAIN: Move 'Review Telemetry Anomaly' READY => EXECUTING] {status: [READY ➔ EXECUTING]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Telemetry Anomaly' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (34, 'STATUS_CHANGED', 'Status changed from READY to EXECUTING.', 1, 7) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(34)] CREATED. [DOMAIN: Move 'Review Telemetry Anomaly' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 34], task_id: [NULL ➔ 7], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Review Telemetry Anomaly' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 7 to 'EXECUTING' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 9 | Ready: 0 | Executing: 3 | Verified: 4 + +>>> Executing command: /mv 8 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(8).comment("Load task 8 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 8 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 8)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Review Launch Criteria' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Launch Criteria' PLANNED => READY] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 8) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Launch Criteria' PLANNED => READY] - [1 rows affected] + UPDATE task_data SET status = 1002, version = 2 WHERE id = 8 AND version = 1 + [TIME]-[philip]-[AUDIT]-Entity [Task(8)] UPDATED. [DOMAIN: Move 'Review Launch Criteria' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Launch Criteria' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (35, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 8) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(35)] CREATED. [DOMAIN: Move 'Review Launch Criteria' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 35], task_id: [NULL ➔ 8], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Review Launch Criteria' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 8 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 8 | Ready: 1 | Executing: 3 | Verified: 4 + +>>> Executing command: /mv 8 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(8).comment("Load task 8 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 8 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 8)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Review Launch Criteria' READY => EXECUTING + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Launch Criteria' READY => EXECUTING] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 8) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Launch Criteria' READY => EXECUTING] - [1 rows affected] + UPDATE task_data SET status = 1003, version = 3 WHERE id = 8 AND version = 2 + [TIME]-[philip]-[AUDIT]-Entity [Task(8)] UPDATED. [DOMAIN: Move 'Review Launch Criteria' READY => EXECUTING] {status: [READY ➔ EXECUTING]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Launch Criteria' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (36, 'STATUS_CHANGED', 'Status changed from READY to EXECUTING.', 1, 8) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(36)] CREATED. [DOMAIN: Move 'Review Launch Criteria' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 36], task_id: [NULL ➔ 8], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Review Launch Criteria' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 8 to 'EXECUTING' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 8 | Ready: 0 | Executing: 4 | Verified: 4 + +>>> Executing command: /mv 9 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(9).comment("Load task 9 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 9 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 9)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Range Safety Check' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Range Safety Check' PLANNED => READY] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 9) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Range Safety Check' PLANNED => READY] - [1 rows affected] + UPDATE task_data SET status = 1002, version = 2 WHERE id = 9 AND version = 1 + [TIME]-[philip]-[AUDIT]-Entity [Task(9)] UPDATED. [DOMAIN: Move 'Range Safety Check' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Range Safety Check' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (37, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 9) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(37)] CREATED. [DOMAIN: Move 'Range Safety Check' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 37], task_id: [NULL ➔ 9], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Range Safety Check' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 9 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 7 | Ready: 1 | Executing: 4 | Verified: 4 + +>>> Executing command: /mv 10 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(10).comment("Load task 10 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 10 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 10)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Begin Propellant Loading' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Begin Propellant Loading' PLANNED => READY] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 10) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Begin Propellant Loading' PLANNED => READY] - [1 rows affected] + UPDATE task_data SET status = 1002, version = 2 WHERE id = 10 AND version = 1 + [TIME]-[philip]-[AUDIT]-Entity [Task(10)] UPDATED. [DOMAIN: Move 'Begin Propellant Loading' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Begin Propellant Loading' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (38, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 10) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(38)] CREATED. [DOMAIN: Move 'Begin Propellant Loading' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 38], task_id: [NULL ➔ 10], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Begin Propellant Loading' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 10 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 6 | Ready: 2 | Executing: 4 | Verified: 4 + +>>> Executing command: /mv 11 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(11).comment("Load task 11 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 11 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 11)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Complete Cryogenic Fueling' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Complete Cryogenic Fueling' PLANNED => READY] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 11) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Complete Cryogenic Fueling' PLANNED => READY] - [1 rows affected] + UPDATE task_data SET status = 1002, version = 2 WHERE id = 11 AND version = 1 + [TIME]-[philip]-[AUDIT]-Entity [Task(11)] UPDATED. [DOMAIN: Move 'Complete Cryogenic Fueling' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Complete Cryogenic Fueling' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (39, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 11) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(39)] CREATED. [DOMAIN: Move 'Complete Cryogenic Fueling' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 39], task_id: [NULL ➔ 11], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Complete Cryogenic Fueling' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 11 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 5 | Ready: 3 | Executing: 4 | Verified: 4 + +>>> Executing command: /mv 12 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(12).comment("Load task 12 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 12 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 12)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Arm Flight Termination System' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Arm Flight Termination System' PLANNED => READY] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 12) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Arm Flight Termination System' PLANNED => READY] - [1 rows affected] + UPDATE task_data SET status = 1002, version = 2 WHERE id = 12 AND version = 1 + [TIME]-[philip]-[AUDIT]-Entity [Task(12)] UPDATED. [DOMAIN: Move 'Arm Flight Termination System' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Arm Flight Termination System' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (40, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 12) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(40)] CREATED. [DOMAIN: Move 'Arm Flight Termination System' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 40], task_id: [NULL ➔ 12], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Arm Flight Termination System' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 12 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 4 | Ready: 4 | Executing: 4 | Verified: 4 + +========== Final Facet Results ========== +Planned: 4 | Ready: 4 | Executing: 4 | Verified: 4 +================================================== + diff --git a/clippy.toml b/clippy.toml new file mode 100644 index 0000000..7722d60 --- /dev/null +++ b/clippy.toml @@ -0,0 +1,15 @@ +disallowed-types = [ + "teaql_tool::T", + "chrono::Utc", + "chrono::Local", + "std::fs::File", +] + +disallowed-methods = [ + "std::fs::read", + "std::fs::read_to_string", + "std::fs::write", + "std::process::Command::new", + "reqwest::get", + "reqwest::Client::new" +] diff --git a/expected-log.txt b/expected-log.txt new file mode 100644 index 0000000..c170c47 --- /dev/null +++ b/expected-log.txt @@ -0,0 +1,1188 @@ + +========== Starting Automated Mission Simulation ========== + +>>> Executing command: Review Mission Timeline + + Create platform_data (4 fields) + Create task_data (5 fields) + Create task_execution_log_data (5 fields) + Create task_status_data (7 fields) + Seed platform_data (1 record inserted) + Seed task_status_data (5 records inserted) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_status().comment("Load task statuses for cache").execute_for_list(&ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task statuses for cache] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[INFO]-TeaQL traces one business request into generated SQL, facets, and audit records. + [TIME]-[philip]-[INFO]-System successfully initialized. + [TIME]-[philip]-[INFO]-Pre-loaded SQLite database 'robot_kanban.db'. + [TIME]-[philip]-[INFO]-TeaQL v1.0.3: Comment Propagation is fully active. + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Review Mission Timeline' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Review Mission Timeline'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Mission Timeline'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 1) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Mission Timeline'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (1, 'Review Mission Timeline', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(1)] CREATED. [Create task 'Review Mission Timeline'] {id: [NULL ➔ 1], name: [NULL ➔ 'Review Mission Timeline'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Mission Timeline' -> Create task 'Review Mission Timeline'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (1, 'CREATED', 'Task ''Review Mission Timeline'' created.', 1, 1) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(1)] CREATED. [Create task 'Review Mission Timeline' -> Create task 'Review Mission Timeline'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Review Mission Timeline' created.'], id: [NULL ➔ 1], task_id: [NULL ➔ 1], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Review Mission Timeline' created. [Create task 'Review Mission Timeline' -> Create task 'Review Mission Timeline'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Review Mission Timeline' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 1 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Validate Payload Configuration + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Validate Payload Configuration' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Validate Payload Configuration'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Validate Payload Configuration'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 2) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Validate Payload Configuration'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (2, 'Validate Payload Configuration', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(2)] CREATED. [Create task 'Validate Payload Configuration'] {id: [NULL ➔ 2], name: [NULL ➔ 'Validate Payload Configuration'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Validate Payload Configuration' -> Create task 'Validate Payload Configuration'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (2, 'CREATED', 'Task ''Validate Payload Configuration'' created.', 1, 2) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(2)] CREATED. [Create task 'Validate Payload Configuration' -> Create task 'Validate Payload Configuration'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Validate Payload Configuration' created.'], id: [NULL ➔ 2], task_id: [NULL ➔ 2], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Validate Payload Configuration' created. [Create task 'Validate Payload Configuration' -> Create task 'Validate Payload Configuration'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Validate Payload Configuration' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [2 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 2 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Verify Flight Software Build + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Verify Flight Software Build' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Verify Flight Software Build'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Verify Flight Software Build'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 3) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Verify Flight Software Build'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (3, 'Verify Flight Software Build', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(3)] CREATED. [Create task 'Verify Flight Software Build'] {id: [NULL ➔ 3], name: [NULL ➔ 'Verify Flight Software Build'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Verify Flight Software Build' -> Create task 'Verify Flight Software Build'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (3, 'CREATED', 'Task ''Verify Flight Software Build'' created.', 1, 3) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(3)] CREATED. [Create task 'Verify Flight Software Build' -> Create task 'Verify Flight Software Build'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Verify Flight Software Build' created.'], id: [NULL ➔ 3], task_id: [NULL ➔ 3], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Verify Flight Software Build' created. [Create task 'Verify Flight Software Build' -> Create task 'Verify Flight Software Build'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Verify Flight Software Build' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [3 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 3 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Calibrate Guidance System + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Calibrate Guidance System' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Calibrate Guidance System'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Calibrate Guidance System'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 4) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Calibrate Guidance System'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (4, 'Calibrate Guidance System', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(4)] CREATED. [Create task 'Calibrate Guidance System'] {id: [NULL ➔ 4], name: [NULL ➔ 'Calibrate Guidance System'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Calibrate Guidance System' -> Create task 'Calibrate Guidance System'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (4, 'CREATED', 'Task ''Calibrate Guidance System'' created.', 1, 4) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(4)] CREATED. [Create task 'Calibrate Guidance System' -> Create task 'Calibrate Guidance System'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Calibrate Guidance System' created.'], id: [NULL ➔ 4], task_id: [NULL ➔ 4], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Calibrate Guidance System' created. [Create task 'Calibrate Guidance System' -> Create task 'Calibrate Guidance System'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Calibrate Guidance System' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [4 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 4 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Load Flight Parameters + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Load Flight Parameters' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Load Flight Parameters'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Load Flight Parameters'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 5) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Load Flight Parameters'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (5, 'Load Flight Parameters', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(5)] CREATED. [Create task 'Load Flight Parameters'] {id: [NULL ➔ 5], name: [NULL ➔ 'Load Flight Parameters'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Load Flight Parameters' -> Create task 'Load Flight Parameters'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (5, 'CREATED', 'Task ''Load Flight Parameters'' created.', 1, 5) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(5)] CREATED. [Create task 'Load Flight Parameters' -> Create task 'Load Flight Parameters'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Load Flight Parameters' created.'], id: [NULL ➔ 5], task_id: [NULL ➔ 5], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Load Flight Parameters' created. [Create task 'Load Flight Parameters' -> Create task 'Load Flight Parameters'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Load Flight Parameters' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [5 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 5 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Initialize Ground Telemetry + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Initialize Ground Telemetry' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Initialize Ground Telemetry'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Initialize Ground Telemetry'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 6) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Initialize Ground Telemetry'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (6, 'Initialize Ground Telemetry', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(6)] CREATED. [Create task 'Initialize Ground Telemetry'] {id: [NULL ➔ 6], name: [NULL ➔ 'Initialize Ground Telemetry'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Initialize Ground Telemetry' -> Create task 'Initialize Ground Telemetry'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (6, 'CREATED', 'Task ''Initialize Ground Telemetry'' created.', 1, 6) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(6)] CREATED. [Create task 'Initialize Ground Telemetry' -> Create task 'Initialize Ground Telemetry'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Initialize Ground Telemetry' created.'], id: [NULL ➔ 6], task_id: [NULL ➔ 6], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Initialize Ground Telemetry' created. [Create task 'Initialize Ground Telemetry' -> Create task 'Initialize Ground Telemetry'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Initialize Ground Telemetry' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [6 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 6 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Review Telemetry Anomaly + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Review Telemetry Anomaly' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Review Telemetry Anomaly'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Telemetry Anomaly'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 7) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Telemetry Anomaly'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (7, 'Review Telemetry Anomaly', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(7)] CREATED. [Create task 'Review Telemetry Anomaly'] {id: [NULL ➔ 7], name: [NULL ➔ 'Review Telemetry Anomaly'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Telemetry Anomaly' -> Create task 'Review Telemetry Anomaly'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (7, 'CREATED', 'Task ''Review Telemetry Anomaly'' created.', 1, 7) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(7)] CREATED. [Create task 'Review Telemetry Anomaly' -> Create task 'Review Telemetry Anomaly'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Review Telemetry Anomaly' created.'], id: [NULL ➔ 7], task_id: [NULL ➔ 7], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Review Telemetry Anomaly' created. [Create task 'Review Telemetry Anomaly' -> Create task 'Review Telemetry Anomaly'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Review Telemetry Anomaly' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [7 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 7 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Review Launch Criteria + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Review Launch Criteria' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Review Launch Criteria'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Launch Criteria'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 8) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Launch Criteria'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (8, 'Review Launch Criteria', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(8)] CREATED. [Create task 'Review Launch Criteria'] {id: [NULL ➔ 8], name: [NULL ➔ 'Review Launch Criteria'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Launch Criteria' -> Create task 'Review Launch Criteria'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (8, 'CREATED', 'Task ''Review Launch Criteria'' created.', 1, 8) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(8)] CREATED. [Create task 'Review Launch Criteria' -> Create task 'Review Launch Criteria'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Review Launch Criteria' created.'], id: [NULL ➔ 8], task_id: [NULL ➔ 8], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Review Launch Criteria' created. [Create task 'Review Launch Criteria' -> Create task 'Review Launch Criteria'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Review Launch Criteria' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [8 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 8 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Range Safety Check + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Range Safety Check' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Range Safety Check'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Range Safety Check'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 9) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Range Safety Check'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (9, 'Range Safety Check', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(9)] CREATED. [Create task 'Range Safety Check'] {id: [NULL ➔ 9], name: [NULL ➔ 'Range Safety Check'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Range Safety Check' -> Create task 'Range Safety Check'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (9, 'CREATED', 'Task ''Range Safety Check'' created.', 1, 9) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(9)] CREATED. [Create task 'Range Safety Check' -> Create task 'Range Safety Check'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Range Safety Check' created.'], id: [NULL ➔ 9], task_id: [NULL ➔ 9], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Range Safety Check' created. [Create task 'Range Safety Check' -> Create task 'Range Safety Check'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Range Safety Check' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [9 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 9 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Begin Propellant Loading + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Begin Propellant Loading' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Begin Propellant Loading'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Begin Propellant Loading'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 10) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Begin Propellant Loading'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (10, 'Begin Propellant Loading', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(10)] CREATED. [Create task 'Begin Propellant Loading'] {id: [NULL ➔ 10], name: [NULL ➔ 'Begin Propellant Loading'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Begin Propellant Loading' -> Create task 'Begin Propellant Loading'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (10, 'CREATED', 'Task ''Begin Propellant Loading'' created.', 1, 10) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(10)] CREATED. [Create task 'Begin Propellant Loading' -> Create task 'Begin Propellant Loading'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Begin Propellant Loading' created.'], id: [NULL ➔ 10], task_id: [NULL ➔ 10], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Begin Propellant Loading' created. [Create task 'Begin Propellant Loading' -> Create task 'Begin Propellant Loading'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Begin Propellant Loading' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [10 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 10 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Complete Cryogenic Fueling + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Complete Cryogenic Fueling' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Complete Cryogenic Fueling'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Complete Cryogenic Fueling'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 11) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Complete Cryogenic Fueling'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (11, 'Complete Cryogenic Fueling', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(11)] CREATED. [Create task 'Complete Cryogenic Fueling'] {id: [NULL ➔ 11], name: [NULL ➔ 'Complete Cryogenic Fueling'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Complete Cryogenic Fueling' -> Create task 'Complete Cryogenic Fueling'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (11, 'CREATED', 'Task ''Complete Cryogenic Fueling'' created.', 1, 11) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(11)] CREATED. [Create task 'Complete Cryogenic Fueling' -> Create task 'Complete Cryogenic Fueling'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Complete Cryogenic Fueling' created.'], id: [NULL ➔ 11], task_id: [NULL ➔ 11], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Complete Cryogenic Fueling' created. [Create task 'Complete Cryogenic Fueling' -> Create task 'Complete Cryogenic Fueling'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Complete Cryogenic Fueling' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [11 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 11 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Arm Flight Termination System + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Arm Flight Termination System' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Arm Flight Termination System'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Arm Flight Termination System'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 12) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Arm Flight Termination System'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (12, 'Arm Flight Termination System', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(12)] CREATED. [Create task 'Arm Flight Termination System'] {id: [NULL ➔ 12], name: [NULL ➔ 'Arm Flight Termination System'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Arm Flight Termination System' -> Create task 'Arm Flight Termination System'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (12, 'CREATED', 'Task ''Arm Flight Termination System'' created.', 1, 12) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(12)] CREATED. [Create task 'Arm Flight Termination System' -> Create task 'Arm Flight Termination System'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Arm Flight Termination System' created.'], id: [NULL ➔ 12], task_id: [NULL ➔ 12], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Arm Flight Termination System' created. [Create task 'Arm Flight Termination System' -> Create task 'Arm Flight Termination System'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Arm Flight Termination System' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [12 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 12 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Conduct GO/NO-GO Poll + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Conduct GO/NO-GO Poll' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Conduct GO/NO-GO Poll'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Conduct GO/NO-GO Poll'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 13) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Conduct GO/NO-GO Poll'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (13, 'Conduct GO/NO-GO Poll', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(13)] CREATED. [Create task 'Conduct GO/NO-GO Poll'] {id: [NULL ➔ 13], name: [NULL ➔ 'Conduct GO/NO-GO Poll'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Conduct GO/NO-GO Poll' -> Create task 'Conduct GO/NO-GO Poll'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (13, 'CREATED', 'Task ''Conduct GO/NO-GO Poll'' created.', 1, 13) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(13)] CREATED. [Create task 'Conduct GO/NO-GO Poll' -> Create task 'Conduct GO/NO-GO Poll'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Conduct GO/NO-GO Poll' created.'], id: [NULL ➔ 13], task_id: [NULL ➔ 13], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Conduct GO/NO-GO Poll' created. [Create task 'Conduct GO/NO-GO Poll' -> Create task 'Conduct GO/NO-GO Poll'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Conduct GO/NO-GO Poll' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [13 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 13 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Start Terminal Countdown + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Start Terminal Countdown' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Start Terminal Countdown'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Start Terminal Countdown'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 14) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Start Terminal Countdown'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (14, 'Start Terminal Countdown', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(14)] CREATED. [Create task 'Start Terminal Countdown'] {id: [NULL ➔ 14], name: [NULL ➔ 'Start Terminal Countdown'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Start Terminal Countdown' -> Create task 'Start Terminal Countdown'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (14, 'CREATED', 'Task ''Start Terminal Countdown'' created.', 1, 14) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(14)] CREATED. [Create task 'Start Terminal Countdown' -> Create task 'Start Terminal Countdown'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Start Terminal Countdown' created.'], id: [NULL ➔ 14], task_id: [NULL ➔ 14], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Start Terminal Countdown' created. [Create task 'Start Terminal Countdown' -> Create task 'Start Terminal Countdown'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Start Terminal Countdown' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [14 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 14 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Execute Hold-Down Release + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Execute Hold-Down Release' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Execute Hold-Down Release'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Execute Hold-Down Release'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 15) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Execute Hold-Down Release'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (15, 'Execute Hold-Down Release', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(15)] CREATED. [Create task 'Execute Hold-Down Release'] {id: [NULL ➔ 15], name: [NULL ➔ 'Execute Hold-Down Release'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Execute Hold-Down Release' -> Create task 'Execute Hold-Down Release'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (15, 'CREATED', 'Task ''Execute Hold-Down Release'' created.', 1, 15) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(15)] CREATED. [Create task 'Execute Hold-Down Release' -> Create task 'Execute Hold-Down Release'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Execute Hold-Down Release' created.'], id: [NULL ➔ 15], task_id: [NULL ➔ 15], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Execute Hold-Down Release' created. [Create task 'Execute Hold-Down Release' -> Create task 'Execute Hold-Down Release'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Execute Hold-Down Release' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [15 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 15 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: Confirm Orbital Insertion + + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Confirm Orbital Insertion' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Confirm Orbital Insertion'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Confirm Orbital Insertion'] - [0 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 16) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Confirm Orbital Insertion'] - [1 rows affected] + INSERT INTO task_data (id, name, version, status, platform) VALUES (16, 'Confirm Orbital Insertion', 1, 1001, 1) + [TIME]-[philip]-[AUDIT]-Entity [Task(16)] CREATED. [Create task 'Confirm Orbital Insertion'] {id: [NULL ➔ 16], name: [NULL ➔ 'Confirm Orbital Insertion'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Confirm Orbital Insertion' -> Create task 'Confirm Orbital Insertion'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (16, 'CREATED', 'Task ''Confirm Orbital Insertion'' created.', 1, 16) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(16)] CREATED. [Create task 'Confirm Orbital Insertion' -> Create task 'Confirm Orbital Insertion'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Confirm Orbital Insertion' created.'], id: [NULL ➔ 16], task_id: [NULL ➔ 16], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Confirm Orbital Insertion' created. [Create task 'Confirm Orbital Insertion' -> Create task 'Confirm Orbital Insertion'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Confirm Orbital Insertion' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 16 | Ready: 0 | Executing: 0 | Verified: 0 + +>>> Executing command: /mv 1 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(1).comment("Load task 1 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 1 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 1)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Review Mission Timeline' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' PLANNED => READY] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 1) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' PLANNED => READY] - [1 rows affected] + UPDATE task_data SET status = 1002, version = 2 WHERE id = 1 AND version = 1 + [TIME]-[philip]-[AUDIT]-Entity [Task(1)] UPDATED. [DOMAIN: Move 'Review Mission Timeline' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (17, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 1) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(17)] CREATED. [DOMAIN: Move 'Review Mission Timeline' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 17], task_id: [NULL ➔ 1], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Review Mission Timeline' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 1 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [2 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 15 | Ready: 1 | Executing: 0 | Verified: 0 + +>>> Executing command: /mv 1 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(1).comment("Load task 1 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 1 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 1)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Review Mission Timeline' READY => EXECUTING + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' READY => EXECUTING] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 1) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' READY => EXECUTING] - [1 rows affected] + UPDATE task_data SET status = 1003, version = 3 WHERE id = 1 AND version = 2 + [TIME]-[philip]-[AUDIT]-Entity [Task(1)] UPDATED. [DOMAIN: Move 'Review Mission Timeline' READY => EXECUTING] {status: [READY ➔ EXECUTING]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (18, 'STATUS_CHANGED', 'Status changed from READY to EXECUTING.', 1, 1) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(18)] CREATED. [DOMAIN: Move 'Review Mission Timeline' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 18], task_id: [NULL ➔ 1], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Review Mission Timeline' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 1 to 'EXECUTING' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [2 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 15 | Ready: 0 | Executing: 1 | Verified: 0 + +>>> Executing command: /mv 1 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(1).comment("Load task 1 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 1 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 1)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Review Mission Timeline' EXECUTING => VERIFIED + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' EXECUTING => VERIFIED] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 1) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' EXECUTING => VERIFIED] - [1 rows affected] + UPDATE task_data SET status = 1004, version = 4 WHERE id = 1 AND version = 3 + [TIME]-[philip]-[AUDIT]-Entity [Task(1)] UPDATED. [DOMAIN: Move 'Review Mission Timeline' EXECUTING => VERIFIED] {status: [EXECUTING ➔ VERIFIED]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (19, 'STATUS_CHANGED', 'Status changed from EXECUTING to VERIFIED.', 1, 1) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(19)] CREATED. [DOMAIN: Move 'Review Mission Timeline' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from EXECUTING to VERIFIED.'], id: [NULL ➔ 19], task_id: [NULL ➔ 1], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from EXECUTING to VERIFIED. [DOMAIN: Move 'Review Mission Timeline' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 1 to 'VERIFIED' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [2 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 15 | Ready: 0 | Executing: 0 | Verified: 1 + +>>> Executing command: /mv 2 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(2).comment("Load task 2 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 2 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 2)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Validate Payload Configuration' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' PLANNED => READY] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 2) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' PLANNED => READY] - [1 rows affected] + UPDATE task_data SET status = 1002, version = 2 WHERE id = 2 AND version = 1 + [TIME]-[philip]-[AUDIT]-Entity [Task(2)] UPDATED. [DOMAIN: Move 'Validate Payload Configuration' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (20, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 2) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(20)] CREATED. [DOMAIN: Move 'Validate Payload Configuration' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 20], task_id: [NULL ➔ 2], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Validate Payload Configuration' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 2 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 14 | Ready: 1 | Executing: 0 | Verified: 1 + +>>> Executing command: /mv 2 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(2).comment("Load task 2 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 2 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 2)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Validate Payload Configuration' READY => EXECUTING + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' READY => EXECUTING] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 2) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' READY => EXECUTING] - [1 rows affected] + UPDATE task_data SET status = 1003, version = 3 WHERE id = 2 AND version = 2 + [TIME]-[philip]-[AUDIT]-Entity [Task(2)] UPDATED. [DOMAIN: Move 'Validate Payload Configuration' READY => EXECUTING] {status: [READY ➔ EXECUTING]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (21, 'STATUS_CHANGED', 'Status changed from READY to EXECUTING.', 1, 2) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(21)] CREATED. [DOMAIN: Move 'Validate Payload Configuration' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 21], task_id: [NULL ➔ 2], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Validate Payload Configuration' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 2 to 'EXECUTING' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 14 | Ready: 0 | Executing: 1 | Verified: 1 + +>>> Executing command: /mv 2 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(2).comment("Load task 2 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 2 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 2)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Validate Payload Configuration' EXECUTING => VERIFIED + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' EXECUTING => VERIFIED] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 2) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' EXECUTING => VERIFIED] - [1 rows affected] + UPDATE task_data SET status = 1004, version = 4 WHERE id = 2 AND version = 3 + [TIME]-[philip]-[AUDIT]-Entity [Task(2)] UPDATED. [DOMAIN: Move 'Validate Payload Configuration' EXECUTING => VERIFIED] {status: [EXECUTING ➔ VERIFIED]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (22, 'STATUS_CHANGED', 'Status changed from EXECUTING to VERIFIED.', 1, 2) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(22)] CREATED. [DOMAIN: Move 'Validate Payload Configuration' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from EXECUTING to VERIFIED.'], id: [NULL ➔ 22], task_id: [NULL ➔ 2], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from EXECUTING to VERIFIED. [DOMAIN: Move 'Validate Payload Configuration' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 2 to 'VERIFIED' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [2 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 14 | Ready: 0 | Executing: 0 | Verified: 2 + +>>> Executing command: /mv 3 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(3).comment("Load task 3 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 3 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 3)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Verify Flight Software Build' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' PLANNED => READY] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 3) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' PLANNED => READY] - [1 rows affected] + UPDATE task_data SET status = 1002, version = 2 WHERE id = 3 AND version = 1 + [TIME]-[philip]-[AUDIT]-Entity [Task(3)] UPDATED. [DOMAIN: Move 'Verify Flight Software Build' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (23, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 3) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(23)] CREATED. [DOMAIN: Move 'Verify Flight Software Build' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 23], task_id: [NULL ➔ 3], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Verify Flight Software Build' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 3 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 13 | Ready: 1 | Executing: 0 | Verified: 2 + +>>> Executing command: /mv 3 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(3).comment("Load task 3 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 3 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 3)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Verify Flight Software Build' READY => EXECUTING + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' READY => EXECUTING] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 3) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' READY => EXECUTING] - [1 rows affected] + UPDATE task_data SET status = 1003, version = 3 WHERE id = 3 AND version = 2 + [TIME]-[philip]-[AUDIT]-Entity [Task(3)] UPDATED. [DOMAIN: Move 'Verify Flight Software Build' READY => EXECUTING] {status: [READY ➔ EXECUTING]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (24, 'STATUS_CHANGED', 'Status changed from READY to EXECUTING.', 1, 3) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(24)] CREATED. [DOMAIN: Move 'Verify Flight Software Build' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 24], task_id: [NULL ➔ 3], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Verify Flight Software Build' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 3 to 'EXECUTING' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 13 | Ready: 0 | Executing: 1 | Verified: 2 + +>>> Executing command: /mv 3 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(3).comment("Load task 3 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 3 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 3)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Verify Flight Software Build' EXECUTING => VERIFIED + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' EXECUTING => VERIFIED] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 3) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' EXECUTING => VERIFIED] - [1 rows affected] + UPDATE task_data SET status = 1004, version = 4 WHERE id = 3 AND version = 3 + [TIME]-[philip]-[AUDIT]-Entity [Task(3)] UPDATED. [DOMAIN: Move 'Verify Flight Software Build' EXECUTING => VERIFIED] {status: [EXECUTING ➔ VERIFIED]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (25, 'STATUS_CHANGED', 'Status changed from EXECUTING to VERIFIED.', 1, 3) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(25)] CREATED. [DOMAIN: Move 'Verify Flight Software Build' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from EXECUTING to VERIFIED.'], id: [NULL ➔ 25], task_id: [NULL ➔ 3], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from EXECUTING to VERIFIED. [DOMAIN: Move 'Verify Flight Software Build' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 3 to 'VERIFIED' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [2 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 13 | Ready: 0 | Executing: 0 | Verified: 3 + +>>> Executing command: /mv 4 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(4).comment("Load task 4 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 4 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 4)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Calibrate Guidance System' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' PLANNED => READY] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 4) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' PLANNED => READY] - [1 rows affected] + UPDATE task_data SET status = 1002, version = 2 WHERE id = 4 AND version = 1 + [TIME]-[philip]-[AUDIT]-Entity [Task(4)] UPDATED. [DOMAIN: Move 'Calibrate Guidance System' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (26, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 4) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(26)] CREATED. [DOMAIN: Move 'Calibrate Guidance System' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 26], task_id: [NULL ➔ 4], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Calibrate Guidance System' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 4 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 12 | Ready: 1 | Executing: 0 | Verified: 3 + +>>> Executing command: /mv 4 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(4).comment("Load task 4 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 4 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 4)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Calibrate Guidance System' READY => EXECUTING + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' READY => EXECUTING] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 4) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' READY => EXECUTING] - [1 rows affected] + UPDATE task_data SET status = 1003, version = 3 WHERE id = 4 AND version = 2 + [TIME]-[philip]-[AUDIT]-Entity [Task(4)] UPDATED. [DOMAIN: Move 'Calibrate Guidance System' READY => EXECUTING] {status: [READY ➔ EXECUTING]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (27, 'STATUS_CHANGED', 'Status changed from READY to EXECUTING.', 1, 4) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(27)] CREATED. [DOMAIN: Move 'Calibrate Guidance System' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 27], task_id: [NULL ➔ 4], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Calibrate Guidance System' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 4 to 'EXECUTING' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 12 | Ready: 0 | Executing: 1 | Verified: 3 + +>>> Executing command: /mv 4 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(4).comment("Load task 4 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 4 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 4)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Calibrate Guidance System' EXECUTING => VERIFIED + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' EXECUTING => VERIFIED] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 4) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' EXECUTING => VERIFIED] - [1 rows affected] + UPDATE task_data SET status = 1004, version = 4 WHERE id = 4 AND version = 3 + [TIME]-[philip]-[AUDIT]-Entity [Task(4)] UPDATED. [DOMAIN: Move 'Calibrate Guidance System' EXECUTING => VERIFIED] {status: [EXECUTING ➔ VERIFIED]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (28, 'STATUS_CHANGED', 'Status changed from EXECUTING to VERIFIED.', 1, 4) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(28)] CREATED. [DOMAIN: Move 'Calibrate Guidance System' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from EXECUTING to VERIFIED.'], id: [NULL ➔ 28], task_id: [NULL ➔ 4], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from EXECUTING to VERIFIED. [DOMAIN: Move 'Calibrate Guidance System' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 4 to 'VERIFIED' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [2 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 12 | Ready: 0 | Executing: 0 | Verified: 4 + +>>> Executing command: /mv 5 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(5).comment("Load task 5 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 5 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 5)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Load Flight Parameters' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Load Flight Parameters' PLANNED => READY] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 5) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Load Flight Parameters' PLANNED => READY] - [1 rows affected] + UPDATE task_data SET status = 1002, version = 2 WHERE id = 5 AND version = 1 + [TIME]-[philip]-[AUDIT]-Entity [Task(5)] UPDATED. [DOMAIN: Move 'Load Flight Parameters' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Load Flight Parameters' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (29, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 5) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(29)] CREATED. [DOMAIN: Move 'Load Flight Parameters' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 29], task_id: [NULL ➔ 5], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Load Flight Parameters' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 5 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 11 | Ready: 1 | Executing: 0 | Verified: 4 + +>>> Executing command: /mv 5 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(5).comment("Load task 5 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 5 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 5)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Load Flight Parameters' READY => EXECUTING + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Load Flight Parameters' READY => EXECUTING] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 5) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Load Flight Parameters' READY => EXECUTING] - [1 rows affected] + UPDATE task_data SET status = 1003, version = 3 WHERE id = 5 AND version = 2 + [TIME]-[philip]-[AUDIT]-Entity [Task(5)] UPDATED. [DOMAIN: Move 'Load Flight Parameters' READY => EXECUTING] {status: [READY ➔ EXECUTING]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Load Flight Parameters' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (30, 'STATUS_CHANGED', 'Status changed from READY to EXECUTING.', 1, 5) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(30)] CREATED. [DOMAIN: Move 'Load Flight Parameters' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 30], task_id: [NULL ➔ 5], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Load Flight Parameters' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 5 to 'EXECUTING' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 11 | Ready: 0 | Executing: 1 | Verified: 4 + +>>> Executing command: /mv 6 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(6).comment("Load task 6 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 6 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 6)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Initialize Ground Telemetry' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Initialize Ground Telemetry' PLANNED => READY] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 6) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Initialize Ground Telemetry' PLANNED => READY] - [1 rows affected] + UPDATE task_data SET status = 1002, version = 2 WHERE id = 6 AND version = 1 + [TIME]-[philip]-[AUDIT]-Entity [Task(6)] UPDATED. [DOMAIN: Move 'Initialize Ground Telemetry' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Initialize Ground Telemetry' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (31, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 6) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(31)] CREATED. [DOMAIN: Move 'Initialize Ground Telemetry' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 31], task_id: [NULL ➔ 6], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Initialize Ground Telemetry' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 6 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 10 | Ready: 1 | Executing: 1 | Verified: 4 + +>>> Executing command: /mv 6 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(6).comment("Load task 6 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 6 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 6)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Initialize Ground Telemetry' READY => EXECUTING + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Initialize Ground Telemetry' READY => EXECUTING] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 6) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Initialize Ground Telemetry' READY => EXECUTING] - [1 rows affected] + UPDATE task_data SET status = 1003, version = 3 WHERE id = 6 AND version = 2 + [TIME]-[philip]-[AUDIT]-Entity [Task(6)] UPDATED. [DOMAIN: Move 'Initialize Ground Telemetry' READY => EXECUTING] {status: [READY ➔ EXECUTING]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Initialize Ground Telemetry' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (32, 'STATUS_CHANGED', 'Status changed from READY to EXECUTING.', 1, 6) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(32)] CREATED. [DOMAIN: Move 'Initialize Ground Telemetry' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 32], task_id: [NULL ➔ 6], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Initialize Ground Telemetry' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 6 to 'EXECUTING' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 10 | Ready: 0 | Executing: 2 | Verified: 4 + +>>> Executing command: /mv 7 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(7).comment("Load task 7 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 7 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 7)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Review Telemetry Anomaly' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Telemetry Anomaly' PLANNED => READY] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 7) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Telemetry Anomaly' PLANNED => READY] - [1 rows affected] + UPDATE task_data SET status = 1002, version = 2 WHERE id = 7 AND version = 1 + [TIME]-[philip]-[AUDIT]-Entity [Task(7)] UPDATED. [DOMAIN: Move 'Review Telemetry Anomaly' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Telemetry Anomaly' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (33, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 7) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(33)] CREATED. [DOMAIN: Move 'Review Telemetry Anomaly' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 33], task_id: [NULL ➔ 7], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Review Telemetry Anomaly' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 7 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 9 | Ready: 1 | Executing: 2 | Verified: 4 + +>>> Executing command: /mv 7 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(7).comment("Load task 7 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 7 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 7)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Review Telemetry Anomaly' READY => EXECUTING + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Telemetry Anomaly' READY => EXECUTING] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 7) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Telemetry Anomaly' READY => EXECUTING] - [1 rows affected] + UPDATE task_data SET status = 1003, version = 3 WHERE id = 7 AND version = 2 + [TIME]-[philip]-[AUDIT]-Entity [Task(7)] UPDATED. [DOMAIN: Move 'Review Telemetry Anomaly' READY => EXECUTING] {status: [READY ➔ EXECUTING]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Telemetry Anomaly' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (34, 'STATUS_CHANGED', 'Status changed from READY to EXECUTING.', 1, 7) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(34)] CREATED. [DOMAIN: Move 'Review Telemetry Anomaly' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 34], task_id: [NULL ➔ 7], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Review Telemetry Anomaly' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 7 to 'EXECUTING' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 9 | Ready: 0 | Executing: 3 | Verified: 4 + +>>> Executing command: /mv 8 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(8).comment("Load task 8 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 8 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 8)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Review Launch Criteria' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Launch Criteria' PLANNED => READY] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 8) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Launch Criteria' PLANNED => READY] - [1 rows affected] + UPDATE task_data SET status = 1002, version = 2 WHERE id = 8 AND version = 1 + [TIME]-[philip]-[AUDIT]-Entity [Task(8)] UPDATED. [DOMAIN: Move 'Review Launch Criteria' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Launch Criteria' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (35, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 8) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(35)] CREATED. [DOMAIN: Move 'Review Launch Criteria' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 35], task_id: [NULL ➔ 8], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Review Launch Criteria' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 8 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 8 | Ready: 1 | Executing: 3 | Verified: 4 + +>>> Executing command: /mv 8 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(8).comment("Load task 8 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 8 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 8)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Review Launch Criteria' READY => EXECUTING + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Launch Criteria' READY => EXECUTING] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 8) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Launch Criteria' READY => EXECUTING] - [1 rows affected] + UPDATE task_data SET status = 1003, version = 3 WHERE id = 8 AND version = 2 + [TIME]-[philip]-[AUDIT]-Entity [Task(8)] UPDATED. [DOMAIN: Move 'Review Launch Criteria' READY => EXECUTING] {status: [READY ➔ EXECUTING]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Launch Criteria' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (36, 'STATUS_CHANGED', 'Status changed from READY to EXECUTING.', 1, 8) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(36)] CREATED. [DOMAIN: Move 'Review Launch Criteria' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 36], task_id: [NULL ➔ 8], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Review Launch Criteria' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 8 to 'EXECUTING' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 8 | Ready: 0 | Executing: 4 | Verified: 4 + +>>> Executing command: /mv 9 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(9).comment("Load task 9 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 9 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 9)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Range Safety Check' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Range Safety Check' PLANNED => READY] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 9) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Range Safety Check' PLANNED => READY] - [1 rows affected] + UPDATE task_data SET status = 1002, version = 2 WHERE id = 9 AND version = 1 + [TIME]-[philip]-[AUDIT]-Entity [Task(9)] UPDATED. [DOMAIN: Move 'Range Safety Check' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Range Safety Check' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (37, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 9) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(37)] CREATED. [DOMAIN: Move 'Range Safety Check' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 37], task_id: [NULL ➔ 9], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Range Safety Check' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 9 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 7 | Ready: 1 | Executing: 4 | Verified: 4 + +>>> Executing command: /mv 10 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(10).comment("Load task 10 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 10 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 10)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Begin Propellant Loading' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Begin Propellant Loading' PLANNED => READY] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 10) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Begin Propellant Loading' PLANNED => READY] - [1 rows affected] + UPDATE task_data SET status = 1002, version = 2 WHERE id = 10 AND version = 1 + [TIME]-[philip]-[AUDIT]-Entity [Task(10)] UPDATED. [DOMAIN: Move 'Begin Propellant Loading' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Begin Propellant Loading' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (38, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 10) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(38)] CREATED. [DOMAIN: Move 'Begin Propellant Loading' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 38], task_id: [NULL ➔ 10], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Begin Propellant Loading' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 10 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 6 | Ready: 2 | Executing: 4 | Verified: 4 + +>>> Executing command: /mv 11 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(11).comment("Load task 11 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 11 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 11)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Complete Cryogenic Fueling' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Complete Cryogenic Fueling' PLANNED => READY] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 11) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Complete Cryogenic Fueling' PLANNED => READY] - [1 rows affected] + UPDATE task_data SET status = 1002, version = 2 WHERE id = 11 AND version = 1 + [TIME]-[philip]-[AUDIT]-Entity [Task(11)] UPDATED. [DOMAIN: Move 'Complete Cryogenic Fueling' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Complete Cryogenic Fueling' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (39, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 11) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(39)] CREATED. [DOMAIN: Move 'Complete Cryogenic Fueling' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 39], task_id: [NULL ➔ 11], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Complete Cryogenic Fueling' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 11 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 5 | Ready: 3 | Executing: 4 | Verified: 4 + +>>> Executing command: /mv 12 + + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(12).comment("Load task 12 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 12 for status transition] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 12)) LIMIT 1 + [TIME]-[philip]-[INFO]-Starting business action: Move 'Arm Flight Termination System' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Arm Flight Termination System' PLANNED => READY] - [1 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 12) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Arm Flight Termination System' PLANNED => READY] - [1 rows affected] + UPDATE task_data SET status = 1002, version = 2 WHERE id = 12 AND version = 1 + [TIME]-[philip]-[AUDIT]-Entity [Task(12)] UPDATED. [DOMAIN: Move 'Arm Flight Termination System' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Arm Flight Termination System' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (40, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 12) + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(40)] CREATED. [DOMAIN: Move 'Arm Flight Termination System' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 40], task_id: [NULL ➔ 12], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Arm Flight Termination System' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 12 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] + SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status + [TIME]-[philip]-[INFO]-Finished query: Get active tasks + -------------------------------------------------------------------------------- + + [Facet] Planned: 4 | Ready: 4 | Executing: 4 | Verified: 4 + +========== Final Facet Results ========== +Planned: 4 | Ready: 4 | Executing: 4 | Verified: 4 +================================================== + diff --git a/generate-lib/lib/Cargo.toml b/generate-lib/lib/Cargo.toml index d929adf..3df93fa 100644 --- a/generate-lib/lib/Cargo.toml +++ b/generate-lib/lib/Cargo.toml @@ -11,11 +11,12 @@ chrono = { version = "0.4", features = ["serde"] } rust_decimal = { version = "1", features = ["serde"] } serde = { version = "1", features = ["derive"] } serde_json = "1" -teaql-core = { version = "2.0.0" } -teaql-macros = { version = "2.0.0" } -teaql-runtime = { version = "2.0.0" } -teaql-sql = { version = "2.0.0" } -teaql-data-service = { version = "2.0.0" } -teaql-provider-rusqlite = { version = "2.0.0" } +teaql-core = { version = "2.0.1" } +teaql-macros = { version = "2.0.1" } +teaql-runtime = { version = "2.0.1" } +teaql-sql = { version = "2.0.1" } +teaql-data-service = { version = "2.0.1" } +teaql-tool-core = { path = "../../../teaql-rust-utils/teaql-tool-core" } +teaql-provider-rusqlite = { version = "2.0.1" } rusqlite = { version = "0.32", features = ["bundled", "chrono", "column_decltype"] } tokio = { version = "1", features = ["macros", "rt-multi-thread"] } \ No newline at end of file diff --git a/generate-lib/lib/src/runtime.rs b/generate-lib/lib/src/runtime.rs index ecedf58..6dae64c 100644 --- a/generate-lib/lib/src/runtime.rs +++ b/generate-lib/lib/src/runtime.rs @@ -142,11 +142,32 @@ pub async fn service_runtime(config: ServiceRuntimeConfig) -> Result Result { let mutation_executor = DataServiceMutationExecutor::new(pool); - let id_generator = DataServiceIdGenerator::from_executor(mutation_executor.clone());let mut context = module_with_behaviors_and_checkers().into_context(); + let id_generator = DataServiceIdGenerator::from_executor(mutation_executor.clone()); + let mut context = module_with_behaviors_and_checkers().into_context(); context.set_internal_id_generator(id_generator); context.use_rusqlite_provider(mutation_executor.clone()); context.insert_resource(ServiceRuntimeExecutor::new(mutation_executor)); - context.ensure_schema().await?; + + // 自动加载 Zero-Code 审计配置与 Schema 模式 + let env_config = teaql_tool_core::audit_config_from_env(&[ + "task", "task_status", "task_execution_log" + ]); + let schema_mode = env_config.schema_mode; + context.insert_resource(env_config.config.clone()); + context.insert_resource(env_config); + + match schema_mode { + teaql_tool_core::SchemaMode::Execute => { + context.ensure_schema().await?; + } + teaql_tool_core::SchemaMode::DryRun => { + context.ensure_schema().await?; + } + teaql_tool_core::SchemaMode::Verify => { + context.ensure_schema().await?; + } + } + Ok(context) } diff --git a/sample-log.txt b/sample-log.txt index dbc0583..dd54a55 100644 --- a/sample-log.txt +++ b/sample-log.txt @@ -1,1190 +1,1177 @@ -running 0 tests - -test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s - - -running 1 test - ========== Starting Automated Mission Simulation ========== >>> Executing command: Review Mission Timeline - Create platform_data (4 fields) - Create task_data (5 fields) - Create task_execution_log_data (5 fields) - Create task_status_data (7 fields) - Seed platform_data (1 record inserted) - Seed task_status_data (5 records inserted) - [17:13:04.312]-[philip]-[INFO]-Execute TeaQL - Q::task_status().comment("Load task statuses for cache").execute_for_list(&ctx) - [17:13:04.313]-[philip]-[ 352µs]-[DEBUG]-SqlLogEntry - [Load task statuses for cache] - [5 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_status().comment("Load task statuses for cache").execute_for_list(&ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task statuses for cache] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.313]-[philip]-[INFO]-TeaQL traces one business request into generated SQL, facets, and audit records. - [17:13:04.314]-[philip]-[INFO]-System successfully initialized. - [17:13:04.314]-[philip]-[INFO]-Pre-loaded SQLite database 'robot_kanban.db'. - [17:13:04.314]-[philip]-[INFO]-TeaQL v1.0.3: Comment Propagation is fully active. - [17:13:04.314]-[philip]-[INFO]-Starting business action: Create task 'Review Mission Timeline' - [17:13:04.318]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Review Mission Timeline'").new_entity(ctx) - [17:13:04.318]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) - [17:13:04.319]-[philip]-[ 187µs]-[DEBUG]-SqlLogEntry - [Create task 'Review Mission Timeline'] - [0 rows returned] + [TIME]-[philip]-[INFO]-TeaQL traces one business request into generated SQL, facets, and audit records. + [TIME]-[philip]-[INFO]-System successfully initialized. + [TIME]-[philip]-[INFO]-Pre-loaded SQLite database 'robot_kanban.db'. + [TIME]-[philip]-[INFO]-TeaQL v1.0.3: Comment Propagation is fully active. + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Review Mission Timeline' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Review Mission Timeline'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Mission Timeline'] - [0 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 1) - [17:13:04.319]-[philip]-[ 3885µs]-[DEBUG]-SqlLogEntry - [Create task 'Review Mission Timeline'] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Mission Timeline'] - [1 rows affected] INSERT INTO task_data (id, name, version, status, platform) VALUES (1, 'Review Mission Timeline', 1, 1001, 1) - [17:13:04.323]-[philip]-[AUDIT]-Entity [Task(1)] CREATED. [Create task 'Review Mission Timeline'] {id: [NULL ➔ 1], name: [NULL ➔ 'Review Mission Timeline'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} - [17:13:04.328]-[philip]-[ 3768µs]-[DEBUG]-SqlLogEntry - [Create task 'Review Mission Timeline' -> Create task 'Review Mission Timeline'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(1)] CREATED. [Create task 'Review Mission Timeline'] {id: [NULL ➔ 1], name: [NULL ➔ 'Review Mission Timeline'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Mission Timeline' -> Create task 'Review Mission Timeline'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (1, 'CREATED', 'Task ''Review Mission Timeline'' created.', 1, 1) - [17:13:04.332]-[philip]-[AUDIT]-Entity [TaskExecutionLog(1)] CREATED. [Create task 'Review Mission Timeline' -> Create task 'Review Mission Timeline'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Review Mission Timeline' created.'], id: [NULL ➔ 1], task_id: [NULL ➔ 1], version: [NULL ➔ 1]} - [17:13:04.332]-[philip]-[INFO]-Business Log: Task 'Review Mission Timeline' created. [Create task 'Review Mission Timeline' -> Create task 'Review Mission Timeline'] - [17:13:04.332]-[philip]-[INFO]-Finished business action: Create task 'Review Mission Timeline' - [17:13:04.332]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.332]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.332]-[philip]-[ 211µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [1 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(1)] CREATED. [Create task 'Review Mission Timeline' -> Create task 'Review Mission Timeline'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Review Mission Timeline' created.'], id: [NULL ➔ 1], task_id: [NULL ➔ 1], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Review Mission Timeline' created. [Create task 'Review Mission Timeline' -> Create task 'Review Mission Timeline'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Review Mission Timeline' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.333]-[philip]-[ 342µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.334]-[philip]-[ 324µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.334]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 1 | Ready: 0 | Executing: 0 | Verified: 0 >>> Executing command: Validate Payload Configuration - [17:13:04.335]-[philip]-[INFO]-Starting business action: Create task 'Validate Payload Configuration' - [17:13:04.339]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Validate Payload Configuration'").new_entity(ctx) - [17:13:04.339]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) - [17:13:04.339]-[philip]-[ 134µs]-[DEBUG]-SqlLogEntry - [Create task 'Validate Payload Configuration'] - [0 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Validate Payload Configuration' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Validate Payload Configuration'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Validate Payload Configuration'] - [0 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 2) - [17:13:04.340]-[philip]-[ 4110µs]-[DEBUG]-SqlLogEntry - [Create task 'Validate Payload Configuration'] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Validate Payload Configuration'] - [1 rows affected] INSERT INTO task_data (id, name, version, status, platform) VALUES (2, 'Validate Payload Configuration', 1, 1001, 1) - [17:13:04.344]-[philip]-[AUDIT]-Entity [Task(2)] CREATED. [Create task 'Validate Payload Configuration'] {id: [NULL ➔ 2], name: [NULL ➔ 'Validate Payload Configuration'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} - [17:13:04.348]-[philip]-[ 3709µs]-[DEBUG]-SqlLogEntry - [Create task 'Validate Payload Configuration' -> Create task 'Validate Payload Configuration'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(2)] CREATED. [Create task 'Validate Payload Configuration'] {id: [NULL ➔ 2], name: [NULL ➔ 'Validate Payload Configuration'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Validate Payload Configuration' -> Create task 'Validate Payload Configuration'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (2, 'CREATED', 'Task ''Validate Payload Configuration'' created.', 1, 2) - [17:13:04.352]-[philip]-[AUDIT]-Entity [TaskExecutionLog(2)] CREATED. [Create task 'Validate Payload Configuration' -> Create task 'Validate Payload Configuration'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Validate Payload Configuration' created.'], id: [NULL ➔ 2], task_id: [NULL ➔ 2], version: [NULL ➔ 1]} - [17:13:04.352]-[philip]-[INFO]-Business Log: Task 'Validate Payload Configuration' created. [Create task 'Validate Payload Configuration' -> Create task 'Validate Payload Configuration'] - [17:13:04.352]-[philip]-[INFO]-Finished business action: Create task 'Validate Payload Configuration' - [17:13:04.353]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.353]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.353]-[philip]-[ 254µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [2 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(2)] CREATED. [Create task 'Validate Payload Configuration' -> Create task 'Validate Payload Configuration'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Validate Payload Configuration' created.'], id: [NULL ➔ 2], task_id: [NULL ➔ 2], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Validate Payload Configuration' created. [Create task 'Validate Payload Configuration' -> Create task 'Validate Payload Configuration'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Validate Payload Configuration' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [2 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.353]-[philip]-[ 383µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.354]-[philip]-[ 351µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.355]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 2 | Ready: 0 | Executing: 0 | Verified: 0 >>> Executing command: Verify Flight Software Build - [17:13:04.355]-[philip]-[INFO]-Starting business action: Create task 'Verify Flight Software Build' - [17:13:04.360]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Verify Flight Software Build'").new_entity(ctx) - [17:13:04.360]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) - [17:13:04.361]-[philip]-[ 153µs]-[DEBUG]-SqlLogEntry - [Create task 'Verify Flight Software Build'] - [0 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Verify Flight Software Build' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Verify Flight Software Build'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Verify Flight Software Build'] - [0 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 3) - [17:13:04.361]-[philip]-[ 3653µs]-[DEBUG]-SqlLogEntry - [Create task 'Verify Flight Software Build'] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Verify Flight Software Build'] - [1 rows affected] INSERT INTO task_data (id, name, version, status, platform) VALUES (3, 'Verify Flight Software Build', 1, 1001, 1) - [17:13:04.365]-[philip]-[AUDIT]-Entity [Task(3)] CREATED. [Create task 'Verify Flight Software Build'] {id: [NULL ➔ 3], name: [NULL ➔ 'Verify Flight Software Build'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} - [17:13:04.369]-[philip]-[ 3568µs]-[DEBUG]-SqlLogEntry - [Create task 'Verify Flight Software Build' -> Create task 'Verify Flight Software Build'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(3)] CREATED. [Create task 'Verify Flight Software Build'] {id: [NULL ➔ 3], name: [NULL ➔ 'Verify Flight Software Build'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Verify Flight Software Build' -> Create task 'Verify Flight Software Build'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (3, 'CREATED', 'Task ''Verify Flight Software Build'' created.', 1, 3) - [17:13:04.373]-[philip]-[AUDIT]-Entity [TaskExecutionLog(3)] CREATED. [Create task 'Verify Flight Software Build' -> Create task 'Verify Flight Software Build'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Verify Flight Software Build' created.'], id: [NULL ➔ 3], task_id: [NULL ➔ 3], version: [NULL ➔ 1]} - [17:13:04.373]-[philip]-[INFO]-Business Log: Task 'Verify Flight Software Build' created. [Create task 'Verify Flight Software Build' -> Create task 'Verify Flight Software Build'] - [17:13:04.373]-[philip]-[INFO]-Finished business action: Create task 'Verify Flight Software Build' - [17:13:04.374]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.374]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.374]-[philip]-[ 264µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [3 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(3)] CREATED. [Create task 'Verify Flight Software Build' -> Create task 'Verify Flight Software Build'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Verify Flight Software Build' created.'], id: [NULL ➔ 3], task_id: [NULL ➔ 3], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Verify Flight Software Build' created. [Create task 'Verify Flight Software Build' -> Create task 'Verify Flight Software Build'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Verify Flight Software Build' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [3 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.374]-[philip]-[ 331µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.375]-[philip]-[ 278µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.376]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 3 | Ready: 0 | Executing: 0 | Verified: 0 >>> Executing command: Calibrate Guidance System - [17:13:04.376]-[philip]-[INFO]-Starting business action: Create task 'Calibrate Guidance System' - [17:13:04.380]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Calibrate Guidance System'").new_entity(ctx) - [17:13:04.380]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) - [17:13:04.380]-[philip]-[ 132µs]-[DEBUG]-SqlLogEntry - [Create task 'Calibrate Guidance System'] - [0 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Calibrate Guidance System' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Calibrate Guidance System'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Calibrate Guidance System'] - [0 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 4) - [17:13:04.381]-[philip]-[ 3698µs]-[DEBUG]-SqlLogEntry - [Create task 'Calibrate Guidance System'] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Calibrate Guidance System'] - [1 rows affected] INSERT INTO task_data (id, name, version, status, platform) VALUES (4, 'Calibrate Guidance System', 1, 1001, 1) - [17:13:04.385]-[philip]-[AUDIT]-Entity [Task(4)] CREATED. [Create task 'Calibrate Guidance System'] {id: [NULL ➔ 4], name: [NULL ➔ 'Calibrate Guidance System'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} - [17:13:04.389]-[philip]-[ 3095µs]-[DEBUG]-SqlLogEntry - [Create task 'Calibrate Guidance System' -> Create task 'Calibrate Guidance System'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(4)] CREATED. [Create task 'Calibrate Guidance System'] {id: [NULL ➔ 4], name: [NULL ➔ 'Calibrate Guidance System'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Calibrate Guidance System' -> Create task 'Calibrate Guidance System'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (4, 'CREATED', 'Task ''Calibrate Guidance System'' created.', 1, 4) - [17:13:04.392]-[philip]-[AUDIT]-Entity [TaskExecutionLog(4)] CREATED. [Create task 'Calibrate Guidance System' -> Create task 'Calibrate Guidance System'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Calibrate Guidance System' created.'], id: [NULL ➔ 4], task_id: [NULL ➔ 4], version: [NULL ➔ 1]} - [17:13:04.392]-[philip]-[INFO]-Business Log: Task 'Calibrate Guidance System' created. [Create task 'Calibrate Guidance System' -> Create task 'Calibrate Guidance System'] - [17:13:04.392]-[philip]-[INFO]-Finished business action: Create task 'Calibrate Guidance System' - [17:13:04.392]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.392]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.393]-[philip]-[ 245µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [4 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(4)] CREATED. [Create task 'Calibrate Guidance System' -> Create task 'Calibrate Guidance System'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Calibrate Guidance System' created.'], id: [NULL ➔ 4], task_id: [NULL ➔ 4], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Calibrate Guidance System' created. [Create task 'Calibrate Guidance System' -> Create task 'Calibrate Guidance System'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Calibrate Guidance System' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [4 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.393]-[philip]-[ 331µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.394]-[philip]-[ 302µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.394]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 4 | Ready: 0 | Executing: 0 | Verified: 0 >>> Executing command: Load Flight Parameters - [17:13:04.395]-[philip]-[INFO]-Starting business action: Create task 'Load Flight Parameters' - [17:13:04.399]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Load Flight Parameters'").new_entity(ctx) - [17:13:04.399]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) - [17:13:04.399]-[philip]-[ 143µs]-[DEBUG]-SqlLogEntry - [Create task 'Load Flight Parameters'] - [0 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Load Flight Parameters' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Load Flight Parameters'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Load Flight Parameters'] - [0 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 5) - [17:13:04.400]-[philip]-[ 3682µs]-[DEBUG]-SqlLogEntry - [Create task 'Load Flight Parameters'] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Load Flight Parameters'] - [1 rows affected] INSERT INTO task_data (id, name, version, status, platform) VALUES (5, 'Load Flight Parameters', 1, 1001, 1) - [17:13:04.403]-[philip]-[AUDIT]-Entity [Task(5)] CREATED. [Create task 'Load Flight Parameters'] {id: [NULL ➔ 5], name: [NULL ➔ 'Load Flight Parameters'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} - [17:13:04.408]-[philip]-[ 3657µs]-[DEBUG]-SqlLogEntry - [Create task 'Load Flight Parameters' -> Create task 'Load Flight Parameters'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(5)] CREATED. [Create task 'Load Flight Parameters'] {id: [NULL ➔ 5], name: [NULL ➔ 'Load Flight Parameters'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Load Flight Parameters' -> Create task 'Load Flight Parameters'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (5, 'CREATED', 'Task ''Load Flight Parameters'' created.', 1, 5) - [17:13:04.412]-[philip]-[AUDIT]-Entity [TaskExecutionLog(5)] CREATED. [Create task 'Load Flight Parameters' -> Create task 'Load Flight Parameters'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Load Flight Parameters' created.'], id: [NULL ➔ 5], task_id: [NULL ➔ 5], version: [NULL ➔ 1]} - [17:13:04.412]-[philip]-[INFO]-Business Log: Task 'Load Flight Parameters' created. [Create task 'Load Flight Parameters' -> Create task 'Load Flight Parameters'] - [17:13:04.412]-[philip]-[INFO]-Finished business action: Create task 'Load Flight Parameters' - [17:13:04.412]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.413]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.413]-[philip]-[ 329µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [5 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(5)] CREATED. [Create task 'Load Flight Parameters' -> Create task 'Load Flight Parameters'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Load Flight Parameters' created.'], id: [NULL ➔ 5], task_id: [NULL ➔ 5], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Load Flight Parameters' created. [Create task 'Load Flight Parameters' -> Create task 'Load Flight Parameters'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Load Flight Parameters' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [5 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.414]-[philip]-[ 378µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.414]-[philip]-[ 310µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.415]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 5 | Ready: 0 | Executing: 0 | Verified: 0 >>> Executing command: Initialize Ground Telemetry - [17:13:04.415]-[philip]-[INFO]-Starting business action: Create task 'Initialize Ground Telemetry' - [17:13:04.419]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Initialize Ground Telemetry'").new_entity(ctx) - [17:13:04.420]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) - [17:13:04.420]-[philip]-[ 189µs]-[DEBUG]-SqlLogEntry - [Create task 'Initialize Ground Telemetry'] - [0 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Initialize Ground Telemetry' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Initialize Ground Telemetry'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Initialize Ground Telemetry'] - [0 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 6) - [17:13:04.421]-[philip]-[ 5164µs]-[DEBUG]-SqlLogEntry - [Create task 'Initialize Ground Telemetry'] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Initialize Ground Telemetry'] - [1 rows affected] INSERT INTO task_data (id, name, version, status, platform) VALUES (6, 'Initialize Ground Telemetry', 1, 1001, 1) - [17:13:04.426]-[philip]-[AUDIT]-Entity [Task(6)] CREATED. [Create task 'Initialize Ground Telemetry'] {id: [NULL ➔ 6], name: [NULL ➔ 'Initialize Ground Telemetry'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} - [17:13:04.430]-[philip]-[ 3677µs]-[DEBUG]-SqlLogEntry - [Create task 'Initialize Ground Telemetry' -> Create task 'Initialize Ground Telemetry'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(6)] CREATED. [Create task 'Initialize Ground Telemetry'] {id: [NULL ➔ 6], name: [NULL ➔ 'Initialize Ground Telemetry'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Initialize Ground Telemetry' -> Create task 'Initialize Ground Telemetry'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (6, 'CREATED', 'Task ''Initialize Ground Telemetry'' created.', 1, 6) - [17:13:04.434]-[philip]-[AUDIT]-Entity [TaskExecutionLog(6)] CREATED. [Create task 'Initialize Ground Telemetry' -> Create task 'Initialize Ground Telemetry'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Initialize Ground Telemetry' created.'], id: [NULL ➔ 6], task_id: [NULL ➔ 6], version: [NULL ➔ 1]} - [17:13:04.434]-[philip]-[INFO]-Business Log: Task 'Initialize Ground Telemetry' created. [Create task 'Initialize Ground Telemetry' -> Create task 'Initialize Ground Telemetry'] - [17:13:04.435]-[philip]-[INFO]-Finished business action: Create task 'Initialize Ground Telemetry' - [17:13:04.435]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.435]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.435]-[philip]-[ 327µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [6 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(6)] CREATED. [Create task 'Initialize Ground Telemetry' -> Create task 'Initialize Ground Telemetry'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Initialize Ground Telemetry' created.'], id: [NULL ➔ 6], task_id: [NULL ➔ 6], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Initialize Ground Telemetry' created. [Create task 'Initialize Ground Telemetry' -> Create task 'Initialize Ground Telemetry'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Initialize Ground Telemetry' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [6 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.436]-[philip]-[ 376µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.436]-[philip]-[ 306µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.437]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 6 | Ready: 0 | Executing: 0 | Verified: 0 >>> Executing command: Review Telemetry Anomaly - [17:13:04.437]-[philip]-[INFO]-Starting business action: Create task 'Review Telemetry Anomaly' - [17:13:04.442]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Review Telemetry Anomaly'").new_entity(ctx) - [17:13:04.442]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) - [17:13:04.442]-[philip]-[ 142µs]-[DEBUG]-SqlLogEntry - [Create task 'Review Telemetry Anomaly'] - [0 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Review Telemetry Anomaly' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Review Telemetry Anomaly'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Telemetry Anomaly'] - [0 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 7) - [17:13:04.443]-[philip]-[ 4069µs]-[DEBUG]-SqlLogEntry - [Create task 'Review Telemetry Anomaly'] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Telemetry Anomaly'] - [1 rows affected] INSERT INTO task_data (id, name, version, status, platform) VALUES (7, 'Review Telemetry Anomaly', 1, 1001, 1) - [17:13:04.447]-[philip]-[AUDIT]-Entity [Task(7)] CREATED. [Create task 'Review Telemetry Anomaly'] {id: [NULL ➔ 7], name: [NULL ➔ 'Review Telemetry Anomaly'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} - [17:13:04.451]-[philip]-[ 3548µs]-[DEBUG]-SqlLogEntry - [Create task 'Review Telemetry Anomaly' -> Create task 'Review Telemetry Anomaly'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(7)] CREATED. [Create task 'Review Telemetry Anomaly'] {id: [NULL ➔ 7], name: [NULL ➔ 'Review Telemetry Anomaly'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Telemetry Anomaly' -> Create task 'Review Telemetry Anomaly'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (7, 'CREATED', 'Task ''Review Telemetry Anomaly'' created.', 1, 7) - [17:13:04.455]-[philip]-[AUDIT]-Entity [TaskExecutionLog(7)] CREATED. [Create task 'Review Telemetry Anomaly' -> Create task 'Review Telemetry Anomaly'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Review Telemetry Anomaly' created.'], id: [NULL ➔ 7], task_id: [NULL ➔ 7], version: [NULL ➔ 1]} - [17:13:04.455]-[philip]-[INFO]-Business Log: Task 'Review Telemetry Anomaly' created. [Create task 'Review Telemetry Anomaly' -> Create task 'Review Telemetry Anomaly'] - [17:13:04.455]-[philip]-[INFO]-Finished business action: Create task 'Review Telemetry Anomaly' - [17:13:04.455]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.455]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.456]-[philip]-[ 286µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [7 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(7)] CREATED. [Create task 'Review Telemetry Anomaly' -> Create task 'Review Telemetry Anomaly'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Review Telemetry Anomaly' created.'], id: [NULL ➔ 7], task_id: [NULL ➔ 7], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Review Telemetry Anomaly' created. [Create task 'Review Telemetry Anomaly' -> Create task 'Review Telemetry Anomaly'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Review Telemetry Anomaly' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [7 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.456]-[philip]-[ 333µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.457]-[philip]-[ 289µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.457]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 7 | Ready: 0 | Executing: 0 | Verified: 0 >>> Executing command: Review Launch Criteria - [17:13:04.458]-[philip]-[INFO]-Starting business action: Create task 'Review Launch Criteria' - [17:13:04.462]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Review Launch Criteria'").new_entity(ctx) - [17:13:04.462]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) - [17:13:04.462]-[philip]-[ 132µs]-[DEBUG]-SqlLogEntry - [Create task 'Review Launch Criteria'] - [0 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Review Launch Criteria' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Review Launch Criteria'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Launch Criteria'] - [0 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 8) - [17:13:04.463]-[philip]-[ 3888µs]-[DEBUG]-SqlLogEntry - [Create task 'Review Launch Criteria'] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Launch Criteria'] - [1 rows affected] INSERT INTO task_data (id, name, version, status, platform) VALUES (8, 'Review Launch Criteria', 1, 1001, 1) - [17:13:04.467]-[philip]-[AUDIT]-Entity [Task(8)] CREATED. [Create task 'Review Launch Criteria'] {id: [NULL ➔ 8], name: [NULL ➔ 'Review Launch Criteria'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} - [17:13:04.471]-[philip]-[ 3098µs]-[DEBUG]-SqlLogEntry - [Create task 'Review Launch Criteria' -> Create task 'Review Launch Criteria'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(8)] CREATED. [Create task 'Review Launch Criteria'] {id: [NULL ➔ 8], name: [NULL ➔ 'Review Launch Criteria'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Review Launch Criteria' -> Create task 'Review Launch Criteria'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (8, 'CREATED', 'Task ''Review Launch Criteria'' created.', 1, 8) - [17:13:04.474]-[philip]-[AUDIT]-Entity [TaskExecutionLog(8)] CREATED. [Create task 'Review Launch Criteria' -> Create task 'Review Launch Criteria'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Review Launch Criteria' created.'], id: [NULL ➔ 8], task_id: [NULL ➔ 8], version: [NULL ➔ 1]} - [17:13:04.474]-[philip]-[INFO]-Business Log: Task 'Review Launch Criteria' created. [Create task 'Review Launch Criteria' -> Create task 'Review Launch Criteria'] - [17:13:04.474]-[philip]-[INFO]-Finished business action: Create task 'Review Launch Criteria' - [17:13:04.474]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.474]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.475]-[philip]-[ 330µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [8 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(8)] CREATED. [Create task 'Review Launch Criteria' -> Create task 'Review Launch Criteria'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Review Launch Criteria' created.'], id: [NULL ➔ 8], task_id: [NULL ➔ 8], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Review Launch Criteria' created. [Create task 'Review Launch Criteria' -> Create task 'Review Launch Criteria'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Review Launch Criteria' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [8 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.475]-[philip]-[ 295µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.476]-[philip]-[ 225µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.476]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 8 | Ready: 0 | Executing: 0 | Verified: 0 >>> Executing command: Range Safety Check - [17:13:04.477]-[philip]-[INFO]-Starting business action: Create task 'Range Safety Check' - [17:13:04.480]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Range Safety Check'").new_entity(ctx) - [17:13:04.481]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) - [17:13:04.481]-[philip]-[ 133µs]-[DEBUG]-SqlLogEntry - [Create task 'Range Safety Check'] - [0 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Range Safety Check' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Range Safety Check'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Range Safety Check'] - [0 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 9) - [17:13:04.481]-[philip]-[ 3550µs]-[DEBUG]-SqlLogEntry - [Create task 'Range Safety Check'] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Range Safety Check'] - [1 rows affected] INSERT INTO task_data (id, name, version, status, platform) VALUES (9, 'Range Safety Check', 1, 1001, 1) - [17:13:04.485]-[philip]-[AUDIT]-Entity [Task(9)] CREATED. [Create task 'Range Safety Check'] {id: [NULL ➔ 9], name: [NULL ➔ 'Range Safety Check'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} - [17:13:04.489]-[philip]-[ 3603µs]-[DEBUG]-SqlLogEntry - [Create task 'Range Safety Check' -> Create task 'Range Safety Check'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(9)] CREATED. [Create task 'Range Safety Check'] {id: [NULL ➔ 9], name: [NULL ➔ 'Range Safety Check'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Range Safety Check' -> Create task 'Range Safety Check'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (9, 'CREATED', 'Task ''Range Safety Check'' created.', 1, 9) - [17:13:04.493]-[philip]-[AUDIT]-Entity [TaskExecutionLog(9)] CREATED. [Create task 'Range Safety Check' -> Create task 'Range Safety Check'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Range Safety Check' created.'], id: [NULL ➔ 9], task_id: [NULL ➔ 9], version: [NULL ➔ 1]} - [17:13:04.493]-[philip]-[INFO]-Business Log: Task 'Range Safety Check' created. [Create task 'Range Safety Check' -> Create task 'Range Safety Check'] - [17:13:04.493]-[philip]-[INFO]-Finished business action: Create task 'Range Safety Check' - [17:13:04.493]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.493]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.493]-[philip]-[ 306µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [9 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(9)] CREATED. [Create task 'Range Safety Check' -> Create task 'Range Safety Check'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Range Safety Check' created.'], id: [NULL ➔ 9], task_id: [NULL ➔ 9], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Range Safety Check' created. [Create task 'Range Safety Check' -> Create task 'Range Safety Check'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Range Safety Check' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [9 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.494]-[philip]-[ 304µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.494]-[philip]-[ 222µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.495]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 9 | Ready: 0 | Executing: 0 | Verified: 0 >>> Executing command: Begin Propellant Loading - [17:13:04.495]-[philip]-[INFO]-Starting business action: Create task 'Begin Propellant Loading' - [17:13:04.499]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Begin Propellant Loading'").new_entity(ctx) - [17:13:04.499]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) - [17:13:04.499]-[philip]-[ 116µs]-[DEBUG]-SqlLogEntry - [Create task 'Begin Propellant Loading'] - [0 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Begin Propellant Loading' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Begin Propellant Loading'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Begin Propellant Loading'] - [0 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 10) - [17:13:04.500]-[philip]-[ 3614µs]-[DEBUG]-SqlLogEntry - [Create task 'Begin Propellant Loading'] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Begin Propellant Loading'] - [1 rows affected] INSERT INTO task_data (id, name, version, status, platform) VALUES (10, 'Begin Propellant Loading', 1, 1001, 1) - [17:13:04.503]-[philip]-[AUDIT]-Entity [Task(10)] CREATED. [Create task 'Begin Propellant Loading'] {id: [NULL ➔ 10], name: [NULL ➔ 'Begin Propellant Loading'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} - [17:13:04.508]-[philip]-[ 3488µs]-[DEBUG]-SqlLogEntry - [Create task 'Begin Propellant Loading' -> Create task 'Begin Propellant Loading'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(10)] CREATED. [Create task 'Begin Propellant Loading'] {id: [NULL ➔ 10], name: [NULL ➔ 'Begin Propellant Loading'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Begin Propellant Loading' -> Create task 'Begin Propellant Loading'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (10, 'CREATED', 'Task ''Begin Propellant Loading'' created.', 1, 10) - [17:13:04.511]-[philip]-[AUDIT]-Entity [TaskExecutionLog(10)] CREATED. [Create task 'Begin Propellant Loading' -> Create task 'Begin Propellant Loading'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Begin Propellant Loading' created.'], id: [NULL ➔ 10], task_id: [NULL ➔ 10], version: [NULL ➔ 1]} - [17:13:04.511]-[philip]-[INFO]-Business Log: Task 'Begin Propellant Loading' created. [Create task 'Begin Propellant Loading' -> Create task 'Begin Propellant Loading'] - [17:13:04.511]-[philip]-[INFO]-Finished business action: Create task 'Begin Propellant Loading' - [17:13:04.511]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.512]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.512]-[philip]-[ 352µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [10 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(10)] CREATED. [Create task 'Begin Propellant Loading' -> Create task 'Begin Propellant Loading'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Begin Propellant Loading' created.'], id: [NULL ➔ 10], task_id: [NULL ➔ 10], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Begin Propellant Loading' created. [Create task 'Begin Propellant Loading' -> Create task 'Begin Propellant Loading'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Begin Propellant Loading' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [10 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.512]-[philip]-[ 294µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.513]-[philip]-[ 238µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.514]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 10 | Ready: 0 | Executing: 0 | Verified: 0 >>> Executing command: Complete Cryogenic Fueling - [17:13:04.514]-[philip]-[INFO]-Starting business action: Create task 'Complete Cryogenic Fueling' - [17:13:04.518]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Complete Cryogenic Fueling'").new_entity(ctx) - [17:13:04.518]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) - [17:13:04.518]-[philip]-[ 131µs]-[DEBUG]-SqlLogEntry - [Create task 'Complete Cryogenic Fueling'] - [0 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Complete Cryogenic Fueling' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Complete Cryogenic Fueling'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Complete Cryogenic Fueling'] - [0 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 11) - [17:13:04.518]-[philip]-[ 3610µs]-[DEBUG]-SqlLogEntry - [Create task 'Complete Cryogenic Fueling'] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Complete Cryogenic Fueling'] - [1 rows affected] INSERT INTO task_data (id, name, version, status, platform) VALUES (11, 'Complete Cryogenic Fueling', 1, 1001, 1) - [17:13:04.522]-[philip]-[AUDIT]-Entity [Task(11)] CREATED. [Create task 'Complete Cryogenic Fueling'] {id: [NULL ➔ 11], name: [NULL ➔ 'Complete Cryogenic Fueling'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} - [17:13:04.526]-[philip]-[ 3573µs]-[DEBUG]-SqlLogEntry - [Create task 'Complete Cryogenic Fueling' -> Create task 'Complete Cryogenic Fueling'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(11)] CREATED. [Create task 'Complete Cryogenic Fueling'] {id: [NULL ➔ 11], name: [NULL ➔ 'Complete Cryogenic Fueling'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Complete Cryogenic Fueling' -> Create task 'Complete Cryogenic Fueling'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (11, 'CREATED', 'Task ''Complete Cryogenic Fueling'' created.', 1, 11) - [17:13:04.530]-[philip]-[AUDIT]-Entity [TaskExecutionLog(11)] CREATED. [Create task 'Complete Cryogenic Fueling' -> Create task 'Complete Cryogenic Fueling'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Complete Cryogenic Fueling' created.'], id: [NULL ➔ 11], task_id: [NULL ➔ 11], version: [NULL ➔ 1]} - [17:13:04.530]-[philip]-[INFO]-Business Log: Task 'Complete Cryogenic Fueling' created. [Create task 'Complete Cryogenic Fueling' -> Create task 'Complete Cryogenic Fueling'] - [17:13:04.530]-[philip]-[INFO]-Finished business action: Create task 'Complete Cryogenic Fueling' - [17:13:04.530]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.530]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.531]-[philip]-[ 360µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [11 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(11)] CREATED. [Create task 'Complete Cryogenic Fueling' -> Create task 'Complete Cryogenic Fueling'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Complete Cryogenic Fueling' created.'], id: [NULL ➔ 11], task_id: [NULL ➔ 11], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Complete Cryogenic Fueling' created. [Create task 'Complete Cryogenic Fueling' -> Create task 'Complete Cryogenic Fueling'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Complete Cryogenic Fueling' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [11 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.531]-[philip]-[ 280µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.532]-[philip]-[ 250µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.533]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 11 | Ready: 0 | Executing: 0 | Verified: 0 >>> Executing command: Arm Flight Termination System - [17:13:04.533]-[philip]-[INFO]-Starting business action: Create task 'Arm Flight Termination System' - [17:13:04.537]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Arm Flight Termination System'").new_entity(ctx) - [17:13:04.537]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) - [17:13:04.537]-[philip]-[ 109µs]-[DEBUG]-SqlLogEntry - [Create task 'Arm Flight Termination System'] - [0 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Arm Flight Termination System' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Arm Flight Termination System'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Arm Flight Termination System'] - [0 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 12) - [17:13:04.537]-[philip]-[ 3520µs]-[DEBUG]-SqlLogEntry - [Create task 'Arm Flight Termination System'] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Arm Flight Termination System'] - [1 rows affected] INSERT INTO task_data (id, name, version, status, platform) VALUES (12, 'Arm Flight Termination System', 1, 1001, 1) - [17:13:04.541]-[philip]-[AUDIT]-Entity [Task(12)] CREATED. [Create task 'Arm Flight Termination System'] {id: [NULL ➔ 12], name: [NULL ➔ 'Arm Flight Termination System'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} - [17:13:04.545]-[philip]-[ 3041µs]-[DEBUG]-SqlLogEntry - [Create task 'Arm Flight Termination System' -> Create task 'Arm Flight Termination System'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(12)] CREATED. [Create task 'Arm Flight Termination System'] {id: [NULL ➔ 12], name: [NULL ➔ 'Arm Flight Termination System'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Arm Flight Termination System' -> Create task 'Arm Flight Termination System'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (12, 'CREATED', 'Task ''Arm Flight Termination System'' created.', 1, 12) - [17:13:04.548]-[philip]-[AUDIT]-Entity [TaskExecutionLog(12)] CREATED. [Create task 'Arm Flight Termination System' -> Create task 'Arm Flight Termination System'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Arm Flight Termination System' created.'], id: [NULL ➔ 12], task_id: [NULL ➔ 12], version: [NULL ➔ 1]} - [17:13:04.548]-[philip]-[INFO]-Business Log: Task 'Arm Flight Termination System' created. [Create task 'Arm Flight Termination System' -> Create task 'Arm Flight Termination System'] - [17:13:04.548]-[philip]-[INFO]-Finished business action: Create task 'Arm Flight Termination System' - [17:13:04.548]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.548]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.549]-[philip]-[ 344µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [12 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(12)] CREATED. [Create task 'Arm Flight Termination System' -> Create task 'Arm Flight Termination System'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Arm Flight Termination System' created.'], id: [NULL ➔ 12], task_id: [NULL ➔ 12], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Arm Flight Termination System' created. [Create task 'Arm Flight Termination System' -> Create task 'Arm Flight Termination System'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Arm Flight Termination System' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [12 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.549]-[philip]-[ 280µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.550]-[philip]-[ 261µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.550]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 12 | Ready: 0 | Executing: 0 | Verified: 0 >>> Executing command: Conduct GO/NO-GO Poll - [17:13:04.551]-[philip]-[INFO]-Starting business action: Create task 'Conduct GO/NO-GO Poll' - [17:13:04.554]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Conduct GO/NO-GO Poll'").new_entity(ctx) - [17:13:04.554]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) - [17:13:04.554]-[philip]-[ 111µs]-[DEBUG]-SqlLogEntry - [Create task 'Conduct GO/NO-GO Poll'] - [0 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Conduct GO/NO-GO Poll' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Conduct GO/NO-GO Poll'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Conduct GO/NO-GO Poll'] - [0 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 13) - [17:13:04.555]-[philip]-[ 3540µs]-[DEBUG]-SqlLogEntry - [Create task 'Conduct GO/NO-GO Poll'] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Conduct GO/NO-GO Poll'] - [1 rows affected] INSERT INTO task_data (id, name, version, status, platform) VALUES (13, 'Conduct GO/NO-GO Poll', 1, 1001, 1) - [17:13:04.558]-[philip]-[AUDIT]-Entity [Task(13)] CREATED. [Create task 'Conduct GO/NO-GO Poll'] {id: [NULL ➔ 13], name: [NULL ➔ 'Conduct GO/NO-GO Poll'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} - [17:13:04.562]-[philip]-[ 3488µs]-[DEBUG]-SqlLogEntry - [Create task 'Conduct GO/NO-GO Poll' -> Create task 'Conduct GO/NO-GO Poll'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(13)] CREATED. [Create task 'Conduct GO/NO-GO Poll'] {id: [NULL ➔ 13], name: [NULL ➔ 'Conduct GO/NO-GO Poll'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Conduct GO/NO-GO Poll' -> Create task 'Conduct GO/NO-GO Poll'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (13, 'CREATED', 'Task ''Conduct GO/NO-GO Poll'' created.', 1, 13) - [17:13:04.566]-[philip]-[AUDIT]-Entity [TaskExecutionLog(13)] CREATED. [Create task 'Conduct GO/NO-GO Poll' -> Create task 'Conduct GO/NO-GO Poll'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Conduct GO/NO-GO Poll' created.'], id: [NULL ➔ 13], task_id: [NULL ➔ 13], version: [NULL ➔ 1]} - [17:13:04.566]-[philip]-[INFO]-Business Log: Task 'Conduct GO/NO-GO Poll' created. [Create task 'Conduct GO/NO-GO Poll' -> Create task 'Conduct GO/NO-GO Poll'] - [17:13:04.566]-[philip]-[INFO]-Finished business action: Create task 'Conduct GO/NO-GO Poll' - [17:13:04.566]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.566]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.566]-[philip]-[ 363µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [13 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(13)] CREATED. [Create task 'Conduct GO/NO-GO Poll' -> Create task 'Conduct GO/NO-GO Poll'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Conduct GO/NO-GO Poll' created.'], id: [NULL ➔ 13], task_id: [NULL ➔ 13], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Conduct GO/NO-GO Poll' created. [Create task 'Conduct GO/NO-GO Poll' -> Create task 'Conduct GO/NO-GO Poll'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Conduct GO/NO-GO Poll' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [13 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.567]-[philip]-[ 279µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.568]-[philip]-[ 234µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.568]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 13 | Ready: 0 | Executing: 0 | Verified: 0 >>> Executing command: Start Terminal Countdown - [17:13:04.569]-[philip]-[INFO]-Starting business action: Create task 'Start Terminal Countdown' - [17:13:04.572]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Start Terminal Countdown'").new_entity(ctx) - [17:13:04.572]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) - [17:13:04.573]-[philip]-[ 110µs]-[DEBUG]-SqlLogEntry - [Create task 'Start Terminal Countdown'] - [0 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Start Terminal Countdown' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Start Terminal Countdown'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Start Terminal Countdown'] - [0 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 14) - [17:13:04.573]-[philip]-[ 3519µs]-[DEBUG]-SqlLogEntry - [Create task 'Start Terminal Countdown'] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Start Terminal Countdown'] - [1 rows affected] INSERT INTO task_data (id, name, version, status, platform) VALUES (14, 'Start Terminal Countdown', 1, 1001, 1) - [17:13:04.577]-[philip]-[AUDIT]-Entity [Task(14)] CREATED. [Create task 'Start Terminal Countdown'] {id: [NULL ➔ 14], name: [NULL ➔ 'Start Terminal Countdown'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} - [17:13:04.581]-[philip]-[ 3490µs]-[DEBUG]-SqlLogEntry - [Create task 'Start Terminal Countdown' -> Create task 'Start Terminal Countdown'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(14)] CREATED. [Create task 'Start Terminal Countdown'] {id: [NULL ➔ 14], name: [NULL ➔ 'Start Terminal Countdown'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Start Terminal Countdown' -> Create task 'Start Terminal Countdown'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (14, 'CREATED', 'Task ''Start Terminal Countdown'' created.', 1, 14) - [17:13:04.584]-[philip]-[AUDIT]-Entity [TaskExecutionLog(14)] CREATED. [Create task 'Start Terminal Countdown' -> Create task 'Start Terminal Countdown'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Start Terminal Countdown' created.'], id: [NULL ➔ 14], task_id: [NULL ➔ 14], version: [NULL ➔ 1]} - [17:13:04.584]-[philip]-[INFO]-Business Log: Task 'Start Terminal Countdown' created. [Create task 'Start Terminal Countdown' -> Create task 'Start Terminal Countdown'] - [17:13:04.584]-[philip]-[INFO]-Finished business action: Create task 'Start Terminal Countdown' - [17:13:04.584]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.585]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.585]-[philip]-[ 388µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [14 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(14)] CREATED. [Create task 'Start Terminal Countdown' -> Create task 'Start Terminal Countdown'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Start Terminal Countdown' created.'], id: [NULL ➔ 14], task_id: [NULL ➔ 14], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Start Terminal Countdown' created. [Create task 'Start Terminal Countdown' -> Create task 'Start Terminal Countdown'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Start Terminal Countdown' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [14 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.585]-[philip]-[ 279µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.586]-[philip]-[ 237µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.587]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 14 | Ready: 0 | Executing: 0 | Verified: 0 >>> Executing command: Execute Hold-Down Release - [17:13:04.587]-[philip]-[INFO]-Starting business action: Create task 'Execute Hold-Down Release' - [17:13:04.591]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Execute Hold-Down Release'").new_entity(ctx) - [17:13:04.591]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) - [17:13:04.591]-[philip]-[ 111µs]-[DEBUG]-SqlLogEntry - [Create task 'Execute Hold-Down Release'] - [0 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Execute Hold-Down Release' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Execute Hold-Down Release'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Execute Hold-Down Release'] - [0 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 15) - [17:13:04.591]-[philip]-[ 3515µs]-[DEBUG]-SqlLogEntry - [Create task 'Execute Hold-Down Release'] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Execute Hold-Down Release'] - [1 rows affected] INSERT INTO task_data (id, name, version, status, platform) VALUES (15, 'Execute Hold-Down Release', 1, 1001, 1) - [17:13:04.595]-[philip]-[AUDIT]-Entity [Task(15)] CREATED. [Create task 'Execute Hold-Down Release'] {id: [NULL ➔ 15], name: [NULL ➔ 'Execute Hold-Down Release'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} - [17:13:04.599]-[philip]-[ 3453µs]-[DEBUG]-SqlLogEntry - [Create task 'Execute Hold-Down Release' -> Create task 'Execute Hold-Down Release'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(15)] CREATED. [Create task 'Execute Hold-Down Release'] {id: [NULL ➔ 15], name: [NULL ➔ 'Execute Hold-Down Release'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Execute Hold-Down Release' -> Create task 'Execute Hold-Down Release'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (15, 'CREATED', 'Task ''Execute Hold-Down Release'' created.', 1, 15) - [17:13:04.603]-[philip]-[AUDIT]-Entity [TaskExecutionLog(15)] CREATED. [Create task 'Execute Hold-Down Release' -> Create task 'Execute Hold-Down Release'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Execute Hold-Down Release' created.'], id: [NULL ➔ 15], task_id: [NULL ➔ 15], version: [NULL ➔ 1]} - [17:13:04.603]-[philip]-[INFO]-Business Log: Task 'Execute Hold-Down Release' created. [Create task 'Execute Hold-Down Release' -> Create task 'Execute Hold-Down Release'] - [17:13:04.603]-[philip]-[INFO]-Finished business action: Create task 'Execute Hold-Down Release' - [17:13:04.603]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.603]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.603]-[philip]-[ 397µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [15 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(15)] CREATED. [Create task 'Execute Hold-Down Release' -> Create task 'Execute Hold-Down Release'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Execute Hold-Down Release' created.'], id: [NULL ➔ 15], task_id: [NULL ➔ 15], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Execute Hold-Down Release' created. [Create task 'Execute Hold-Down Release' -> Create task 'Execute Hold-Down Release'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Execute Hold-Down Release' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [15 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.604]-[philip]-[ 286µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.604]-[philip]-[ 236µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.605]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 15 | Ready: 0 | Executing: 0 | Verified: 0 >>> Executing command: Confirm Orbital Insertion - [17:13:04.605]-[philip]-[INFO]-Starting business action: Create task 'Confirm Orbital Insertion' - [17:13:04.609]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Confirm Orbital Insertion'").new_entity(ctx) - [17:13:04.609]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) - [17:13:04.609]-[philip]-[ 110µs]-[DEBUG]-SqlLogEntry - [Create task 'Confirm Orbital Insertion'] - [0 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Create task 'Confirm Orbital Insertion' + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Create task 'Confirm Orbital Insertion'").new_entity(ctx) + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'CREATED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Confirm Orbital Insertion'] - [0 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 16) - [17:13:04.610]-[philip]-[ 3632µs]-[DEBUG]-SqlLogEntry - [Create task 'Confirm Orbital Insertion'] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Confirm Orbital Insertion'] - [1 rows affected] INSERT INTO task_data (id, name, version, status, platform) VALUES (16, 'Confirm Orbital Insertion', 1, 1001, 1) - [17:13:04.614]-[philip]-[AUDIT]-Entity [Task(16)] CREATED. [Create task 'Confirm Orbital Insertion'] {id: [NULL ➔ 16], name: [NULL ➔ 'Confirm Orbital Insertion'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} - [17:13:04.618]-[philip]-[ 3519µs]-[DEBUG]-SqlLogEntry - [Create task 'Confirm Orbital Insertion' -> Create task 'Confirm Orbital Insertion'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(16)] CREATED. [Create task 'Confirm Orbital Insertion'] {id: [NULL ➔ 16], name: [NULL ➔ 'Confirm Orbital Insertion'], platform_id: [NULL ➔ 1], status: [NULL ➔ PLANNED], version: [NULL ➔ 1]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Create task 'Confirm Orbital Insertion' -> Create task 'Confirm Orbital Insertion'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (16, 'CREATED', 'Task ''Confirm Orbital Insertion'' created.', 1, 16) - [17:13:04.621]-[philip]-[AUDIT]-Entity [TaskExecutionLog(16)] CREATED. [Create task 'Confirm Orbital Insertion' -> Create task 'Confirm Orbital Insertion'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Confirm Orbital Insertion' created.'], id: [NULL ➔ 16], task_id: [NULL ➔ 16], version: [NULL ➔ 1]} - [17:13:04.621]-[philip]-[INFO]-Business Log: Task 'Confirm Orbital Insertion' created. [Create task 'Confirm Orbital Insertion' -> Create task 'Confirm Orbital Insertion'] - [17:13:04.622]-[philip]-[INFO]-Finished business action: Create task 'Confirm Orbital Insertion' - [17:13:04.622]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.622]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.622]-[philip]-[ 471µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(16)] CREATED. [Create task 'Confirm Orbital Insertion' -> Create task 'Confirm Orbital Insertion'] {action: [NULL ➔ 'CREATED'], detail: [NULL ➔ 'Task 'Confirm Orbital Insertion' created.'], id: [NULL ➔ 16], task_id: [NULL ➔ 16], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Task 'Confirm Orbital Insertion' created. [Create task 'Confirm Orbital Insertion' -> Create task 'Confirm Orbital Insertion'] + [TIME]-[philip]-[INFO]-Finished business action: Create task 'Confirm Orbital Insertion' + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.623]-[philip]-[ 307µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.623]-[philip]-[ 198µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [1 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.624]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 16 | Ready: 0 | Executing: 0 | Verified: 0 >>> Executing command: /mv 1 - [17:13:04.624]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(1).comment("Load task 1 for status transition").execute_for_one(&self.ctx) - [17:13:04.624]-[philip]-[ 132µs]-[DEBUG]-SqlLogEntry - [Load task 1 for status transition] - [1 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(1).comment("Load task 1 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 1 for status transition] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 1)) LIMIT 1 - [17:13:04.624]-[philip]-[INFO]-Starting business action: Move 'Review Mission Timeline' PLANNED => READY - [17:13:04.624]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) - [17:13:04.625]-[philip]-[ 118µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' PLANNED => READY] - [1 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Move 'Review Mission Timeline' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' PLANNED => READY] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 1) - [17:13:04.625]-[philip]-[ 3982µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' PLANNED => READY] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' PLANNED => READY] - [1 rows affected] UPDATE task_data SET status = 1002, version = 2 WHERE id = 1 AND version = 1 - [17:13:04.629]-[philip]-[AUDIT]-Entity [Task(1)] UPDATED. [DOMAIN: Move 'Review Mission Timeline' PLANNED => READY] {status: [PLANNED ➔ READY]} - [17:13:04.633]-[philip]-[ 6872µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(1)] UPDATED. [DOMAIN: Move 'Review Mission Timeline' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (17, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 1) - [17:13:04.640]-[philip]-[AUDIT]-Entity [TaskExecutionLog(17)] CREATED. [DOMAIN: Move 'Review Mission Timeline' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 17], task_id: [NULL ➔ 1], version: [NULL ➔ 1]} - [17:13:04.640]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Review Mission Timeline' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [17:13:04.640]-[philip]-[INFO]-Finished business action: Moved task 1 to 'READY' (DDD transition) - [17:13:04.640]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.640]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.640]-[philip]-[ 361µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(17)] CREATED. [DOMAIN: Move 'Review Mission Timeline' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 17], task_id: [NULL ➔ 1], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Review Mission Timeline' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 1 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.641]-[philip]-[ 251µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.641]-[philip]-[ 194µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [2 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [2 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.642]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 15 | Ready: 1 | Executing: 0 | Verified: 0 >>> Executing command: /mv 1 - [17:13:04.642]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(1).comment("Load task 1 for status transition").execute_for_one(&self.ctx) - [17:13:04.642]-[philip]-[ 136µs]-[DEBUG]-SqlLogEntry - [Load task 1 for status transition] - [1 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(1).comment("Load task 1 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 1 for status transition] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 1)) LIMIT 1 - [17:13:04.643]-[philip]-[INFO]-Starting business action: Move 'Review Mission Timeline' READY => EXECUTING - [17:13:04.643]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) - [17:13:04.643]-[philip]-[ 122µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' READY => EXECUTING] - [1 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Move 'Review Mission Timeline' READY => EXECUTING + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' READY => EXECUTING] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 1) - [17:13:04.643]-[philip]-[ 3740µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' READY => EXECUTING] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' READY => EXECUTING] - [1 rows affected] UPDATE task_data SET status = 1003, version = 3 WHERE id = 1 AND version = 2 - [17:13:04.647]-[philip]-[AUDIT]-Entity [Task(1)] UPDATED. [DOMAIN: Move 'Review Mission Timeline' READY => EXECUTING] {status: [READY ➔ EXECUTING]} - [17:13:04.651]-[philip]-[ 3018µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(1)] UPDATED. [DOMAIN: Move 'Review Mission Timeline' READY => EXECUTING] {status: [READY ➔ EXECUTING]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (18, 'STATUS_CHANGED', 'Status changed from READY to EXECUTING.', 1, 1) - [17:13:04.654]-[philip]-[AUDIT]-Entity [TaskExecutionLog(18)] CREATED. [DOMAIN: Move 'Review Mission Timeline' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 18], task_id: [NULL ➔ 1], version: [NULL ➔ 1]} - [17:13:04.654]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Review Mission Timeline' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [17:13:04.654]-[philip]-[INFO]-Finished business action: Moved task 1 to 'EXECUTING' (DDD transition) - [17:13:04.654]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.654]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.654]-[philip]-[ 299µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(18)] CREATED. [DOMAIN: Move 'Review Mission Timeline' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 18], task_id: [NULL ➔ 1], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Review Mission Timeline' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 1 to 'EXECUTING' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.655]-[philip]-[ 211µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.656]-[philip]-[ 186µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [2 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [2 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.656]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 15 | Ready: 0 | Executing: 1 | Verified: 0 >>> Executing command: /mv 1 - [17:13:04.656]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(1).comment("Load task 1 for status transition").execute_for_one(&self.ctx) - [17:13:04.656]-[philip]-[ 161µs]-[DEBUG]-SqlLogEntry - [Load task 1 for status transition] - [1 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(1).comment("Load task 1 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 1 for status transition] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 1)) LIMIT 1 - [17:13:04.657]-[philip]-[INFO]-Starting business action: Move 'Review Mission Timeline' EXECUTING => VERIFIED - [17:13:04.657]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) - [17:13:04.657]-[philip]-[ 135µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' EXECUTING => VERIFIED] - [1 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Move 'Review Mission Timeline' EXECUTING => VERIFIED + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' EXECUTING => VERIFIED] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 1) - [17:13:04.657]-[philip]-[ 3421µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' EXECUTING => VERIFIED] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' EXECUTING => VERIFIED] - [1 rows affected] UPDATE task_data SET status = 1004, version = 4 WHERE id = 1 AND version = 3 - [17:13:04.661]-[philip]-[AUDIT]-Entity [Task(1)] UPDATED. [DOMAIN: Move 'Review Mission Timeline' EXECUTING => VERIFIED] {status: [EXECUTING ➔ VERIFIED]} - [17:13:04.665]-[philip]-[ 3415µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(1)] UPDATED. [DOMAIN: Move 'Review Mission Timeline' EXECUTING => VERIFIED] {status: [EXECUTING ➔ VERIFIED]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Mission Timeline' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (19, 'STATUS_CHANGED', 'Status changed from EXECUTING to VERIFIED.', 1, 1) - [17:13:04.668]-[philip]-[AUDIT]-Entity [TaskExecutionLog(19)] CREATED. [DOMAIN: Move 'Review Mission Timeline' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from EXECUTING to VERIFIED.'], id: [NULL ➔ 19], task_id: [NULL ➔ 1], version: [NULL ➔ 1]} - [17:13:04.668]-[philip]-[INFO]-Business Log: Status changed from EXECUTING to VERIFIED. [DOMAIN: Move 'Review Mission Timeline' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] - [17:13:04.668]-[philip]-[INFO]-Finished business action: Moved task 1 to 'VERIFIED' (DDD transition) - [17:13:04.668]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.668]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.669]-[philip]-[ 297µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(19)] CREATED. [DOMAIN: Move 'Review Mission Timeline' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from EXECUTING to VERIFIED.'], id: [NULL ➔ 19], task_id: [NULL ➔ 1], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from EXECUTING to VERIFIED. [DOMAIN: Move 'Review Mission Timeline' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 1 to 'VERIFIED' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.669]-[philip]-[ 211µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.670]-[philip]-[ 183µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [2 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [2 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.670]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 15 | Ready: 0 | Executing: 0 | Verified: 1 >>> Executing command: /mv 2 - [17:13:04.670]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(2).comment("Load task 2 for status transition").execute_for_one(&self.ctx) - [17:13:04.670]-[philip]-[ 140µs]-[DEBUG]-SqlLogEntry - [Load task 2 for status transition] - [1 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(2).comment("Load task 2 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 2 for status transition] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 2)) LIMIT 1 - [17:13:04.671]-[philip]-[INFO]-Starting business action: Move 'Validate Payload Configuration' PLANNED => READY - [17:13:04.671]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) - [17:13:04.671]-[philip]-[ 123µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' PLANNED => READY] - [1 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Move 'Validate Payload Configuration' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' PLANNED => READY] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 2) - [17:13:04.671]-[philip]-[ 3516µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' PLANNED => READY] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' PLANNED => READY] - [1 rows affected] UPDATE task_data SET status = 1002, version = 2 WHERE id = 2 AND version = 1 - [17:13:04.675]-[philip]-[AUDIT]-Entity [Task(2)] UPDATED. [DOMAIN: Move 'Validate Payload Configuration' PLANNED => READY] {status: [PLANNED ➔ READY]} - [17:13:04.679]-[philip]-[ 3019µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(2)] UPDATED. [DOMAIN: Move 'Validate Payload Configuration' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (20, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 2) - [17:13:04.682]-[philip]-[AUDIT]-Entity [TaskExecutionLog(20)] CREATED. [DOMAIN: Move 'Validate Payload Configuration' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 20], task_id: [NULL ➔ 2], version: [NULL ➔ 1]} - [17:13:04.682]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Validate Payload Configuration' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [17:13:04.682]-[philip]-[INFO]-Finished business action: Moved task 2 to 'READY' (DDD transition) - [17:13:04.682]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.682]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.682]-[philip]-[ 312µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(20)] CREATED. [DOMAIN: Move 'Validate Payload Configuration' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 20], task_id: [NULL ➔ 2], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Validate Payload Configuration' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 2 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.683]-[philip]-[ 237µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.684]-[philip]-[ 235µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.684]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 14 | Ready: 1 | Executing: 0 | Verified: 1 >>> Executing command: /mv 2 - [17:13:04.684]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(2).comment("Load task 2 for status transition").execute_for_one(&self.ctx) - [17:13:04.684]-[philip]-[ 141µs]-[DEBUG]-SqlLogEntry - [Load task 2 for status transition] - [1 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(2).comment("Load task 2 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 2 for status transition] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 2)) LIMIT 1 - [17:13:04.685]-[philip]-[INFO]-Starting business action: Move 'Validate Payload Configuration' READY => EXECUTING - [17:13:04.685]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) - [17:13:04.685]-[philip]-[ 131µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' READY => EXECUTING] - [1 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Move 'Validate Payload Configuration' READY => EXECUTING + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' READY => EXECUTING] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 2) - [17:13:04.685]-[philip]-[ 3449µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' READY => EXECUTING] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' READY => EXECUTING] - [1 rows affected] UPDATE task_data SET status = 1003, version = 3 WHERE id = 2 AND version = 2 - [17:13:04.689]-[philip]-[AUDIT]-Entity [Task(2)] UPDATED. [DOMAIN: Move 'Validate Payload Configuration' READY => EXECUTING] {status: [READY ➔ EXECUTING]} - [17:13:04.693]-[philip]-[ 3043µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(2)] UPDATED. [DOMAIN: Move 'Validate Payload Configuration' READY => EXECUTING] {status: [READY ➔ EXECUTING]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (21, 'STATUS_CHANGED', 'Status changed from READY to EXECUTING.', 1, 2) - [17:13:04.696]-[philip]-[AUDIT]-Entity [TaskExecutionLog(21)] CREATED. [DOMAIN: Move 'Validate Payload Configuration' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 21], task_id: [NULL ➔ 2], version: [NULL ➔ 1]} - [17:13:04.696]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Validate Payload Configuration' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [17:13:04.696]-[philip]-[INFO]-Finished business action: Moved task 2 to 'EXECUTING' (DDD transition) - [17:13:04.696]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.696]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.697]-[philip]-[ 383µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(21)] CREATED. [DOMAIN: Move 'Validate Payload Configuration' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 21], task_id: [NULL ➔ 2], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Validate Payload Configuration' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 2 to 'EXECUTING' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.697]-[philip]-[ 254µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.698]-[philip]-[ 244µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.698]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 14 | Ready: 0 | Executing: 1 | Verified: 1 >>> Executing command: /mv 2 - [17:13:04.699]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(2).comment("Load task 2 for status transition").execute_for_one(&self.ctx) - [17:13:04.699]-[philip]-[ 175µs]-[DEBUG]-SqlLogEntry - [Load task 2 for status transition] - [1 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(2).comment("Load task 2 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 2 for status transition] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 2)) LIMIT 1 - [17:13:04.699]-[philip]-[INFO]-Starting business action: Move 'Validate Payload Configuration' EXECUTING => VERIFIED - [17:13:04.699]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) - [17:13:04.700]-[philip]-[ 137µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' EXECUTING => VERIFIED] - [1 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Move 'Validate Payload Configuration' EXECUTING => VERIFIED + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' EXECUTING => VERIFIED] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 2) - [17:13:04.700]-[philip]-[ 3583µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' EXECUTING => VERIFIED] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' EXECUTING => VERIFIED] - [1 rows affected] UPDATE task_data SET status = 1004, version = 4 WHERE id = 2 AND version = 3 - [17:13:04.704]-[philip]-[AUDIT]-Entity [Task(2)] UPDATED. [DOMAIN: Move 'Validate Payload Configuration' EXECUTING => VERIFIED] {status: [EXECUTING ➔ VERIFIED]} - [17:13:04.708]-[philip]-[ 3631µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(2)] UPDATED. [DOMAIN: Move 'Validate Payload Configuration' EXECUTING => VERIFIED] {status: [EXECUTING ➔ VERIFIED]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Validate Payload Configuration' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (22, 'STATUS_CHANGED', 'Status changed from EXECUTING to VERIFIED.', 1, 2) - [17:13:04.712]-[philip]-[AUDIT]-Entity [TaskExecutionLog(22)] CREATED. [DOMAIN: Move 'Validate Payload Configuration' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from EXECUTING to VERIFIED.'], id: [NULL ➔ 22], task_id: [NULL ➔ 2], version: [NULL ➔ 1]} - [17:13:04.712]-[philip]-[INFO]-Business Log: Status changed from EXECUTING to VERIFIED. [DOMAIN: Move 'Validate Payload Configuration' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] - [17:13:04.712]-[philip]-[INFO]-Finished business action: Moved task 2 to 'VERIFIED' (DDD transition) - [17:13:04.712]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.712]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.712]-[philip]-[ 396µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(22)] CREATED. [DOMAIN: Move 'Validate Payload Configuration' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from EXECUTING to VERIFIED.'], id: [NULL ➔ 22], task_id: [NULL ➔ 2], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from EXECUTING to VERIFIED. [DOMAIN: Move 'Validate Payload Configuration' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 2 to 'VERIFIED' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.713]-[philip]-[ 277µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.714]-[philip]-[ 279µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [2 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [2 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.714]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 14 | Ready: 0 | Executing: 0 | Verified: 2 >>> Executing command: /mv 3 - [17:13:04.715]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(3).comment("Load task 3 for status transition").execute_for_one(&self.ctx) - [17:13:04.715]-[philip]-[ 196µs]-[DEBUG]-SqlLogEntry - [Load task 3 for status transition] - [1 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(3).comment("Load task 3 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 3 for status transition] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 3)) LIMIT 1 - [17:13:04.715]-[philip]-[INFO]-Starting business action: Move 'Verify Flight Software Build' PLANNED => READY - [17:13:04.715]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) - [17:13:04.716]-[philip]-[ 151µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' PLANNED => READY] - [1 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Move 'Verify Flight Software Build' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' PLANNED => READY] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 3) - [17:13:04.716]-[philip]-[ 3868µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' PLANNED => READY] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' PLANNED => READY] - [1 rows affected] UPDATE task_data SET status = 1002, version = 2 WHERE id = 3 AND version = 1 - [17:13:04.720]-[philip]-[AUDIT]-Entity [Task(3)] UPDATED. [DOMAIN: Move 'Verify Flight Software Build' PLANNED => READY] {status: [PLANNED ➔ READY]} - [17:13:04.725]-[philip]-[ 4019µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(3)] UPDATED. [DOMAIN: Move 'Verify Flight Software Build' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (23, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 3) - [17:13:04.729]-[philip]-[AUDIT]-Entity [TaskExecutionLog(23)] CREATED. [DOMAIN: Move 'Verify Flight Software Build' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 23], task_id: [NULL ➔ 3], version: [NULL ➔ 1]} - [17:13:04.729]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Verify Flight Software Build' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [17:13:04.729]-[philip]-[INFO]-Finished business action: Moved task 3 to 'READY' (DDD transition) - [17:13:04.729]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.729]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.730]-[philip]-[ 478µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(23)] CREATED. [DOMAIN: Move 'Verify Flight Software Build' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 23], task_id: [NULL ➔ 3], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Verify Flight Software Build' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 3 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.730]-[philip]-[ 304µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.731]-[philip]-[ 329µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.732]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 13 | Ready: 1 | Executing: 0 | Verified: 2 >>> Executing command: /mv 3 - [17:13:04.732]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(3).comment("Load task 3 for status transition").execute_for_one(&self.ctx) - [17:13:04.732]-[philip]-[ 206µs]-[DEBUG]-SqlLogEntry - [Load task 3 for status transition] - [1 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(3).comment("Load task 3 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 3 for status transition] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 3)) LIMIT 1 - [17:13:04.733]-[philip]-[INFO]-Starting business action: Move 'Verify Flight Software Build' READY => EXECUTING - [17:13:04.733]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) - [17:13:04.733]-[philip]-[ 183µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' READY => EXECUTING] - [1 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Move 'Verify Flight Software Build' READY => EXECUTING + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' READY => EXECUTING] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 3) - [17:13:04.734]-[philip]-[ 4303µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' READY => EXECUTING] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' READY => EXECUTING] - [1 rows affected] UPDATE task_data SET status = 1003, version = 3 WHERE id = 3 AND version = 2 - [17:13:04.738]-[philip]-[AUDIT]-Entity [Task(3)] UPDATED. [DOMAIN: Move 'Verify Flight Software Build' READY => EXECUTING] {status: [READY ➔ EXECUTING]} - [17:13:04.743]-[philip]-[ 4366µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(3)] UPDATED. [DOMAIN: Move 'Verify Flight Software Build' READY => EXECUTING] {status: [READY ➔ EXECUTING]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (24, 'STATUS_CHANGED', 'Status changed from READY to EXECUTING.', 1, 3) - [17:13:04.748]-[philip]-[AUDIT]-Entity [TaskExecutionLog(24)] CREATED. [DOMAIN: Move 'Verify Flight Software Build' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 24], task_id: [NULL ➔ 3], version: [NULL ➔ 1]} - [17:13:04.748]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Verify Flight Software Build' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [17:13:04.748]-[philip]-[INFO]-Finished business action: Moved task 3 to 'EXECUTING' (DDD transition) - [17:13:04.748]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.748]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.748]-[philip]-[ 468µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(24)] CREATED. [DOMAIN: Move 'Verify Flight Software Build' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 24], task_id: [NULL ➔ 3], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Verify Flight Software Build' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 3 to 'EXECUTING' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.749]-[philip]-[ 336µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.750]-[philip]-[ 346µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.751]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 13 | Ready: 0 | Executing: 1 | Verified: 2 >>> Executing command: /mv 3 - [17:13:04.751]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(3).comment("Load task 3 for status transition").execute_for_one(&self.ctx) - [17:13:04.751]-[philip]-[ 206µs]-[DEBUG]-SqlLogEntry - [Load task 3 for status transition] - [1 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(3).comment("Load task 3 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 3 for status transition] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 3)) LIMIT 1 - [17:13:04.752]-[philip]-[INFO]-Starting business action: Move 'Verify Flight Software Build' EXECUTING => VERIFIED - [17:13:04.752]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) - [17:13:04.752]-[philip]-[ 201µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' EXECUTING => VERIFIED] - [1 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Move 'Verify Flight Software Build' EXECUTING => VERIFIED + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' EXECUTING => VERIFIED] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 3) - [17:13:04.753]-[philip]-[ 4308µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' EXECUTING => VERIFIED] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' EXECUTING => VERIFIED] - [1 rows affected] UPDATE task_data SET status = 1004, version = 4 WHERE id = 3 AND version = 3 - [17:13:04.757]-[philip]-[AUDIT]-Entity [Task(3)] UPDATED. [DOMAIN: Move 'Verify Flight Software Build' EXECUTING => VERIFIED] {status: [EXECUTING ➔ VERIFIED]} - [17:13:04.762]-[philip]-[ 4203µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(3)] UPDATED. [DOMAIN: Move 'Verify Flight Software Build' EXECUTING => VERIFIED] {status: [EXECUTING ➔ VERIFIED]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Verify Flight Software Build' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (25, 'STATUS_CHANGED', 'Status changed from EXECUTING to VERIFIED.', 1, 3) - [17:13:04.766]-[philip]-[AUDIT]-Entity [TaskExecutionLog(25)] CREATED. [DOMAIN: Move 'Verify Flight Software Build' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from EXECUTING to VERIFIED.'], id: [NULL ➔ 25], task_id: [NULL ➔ 3], version: [NULL ➔ 1]} - [17:13:04.766]-[philip]-[INFO]-Business Log: Status changed from EXECUTING to VERIFIED. [DOMAIN: Move 'Verify Flight Software Build' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] - [17:13:04.767]-[philip]-[INFO]-Finished business action: Moved task 3 to 'VERIFIED' (DDD transition) - [17:13:04.767]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.767]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.767]-[philip]-[ 476µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(25)] CREATED. [DOMAIN: Move 'Verify Flight Software Build' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from EXECUTING to VERIFIED.'], id: [NULL ➔ 25], task_id: [NULL ➔ 3], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from EXECUTING to VERIFIED. [DOMAIN: Move 'Verify Flight Software Build' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 3 to 'VERIFIED' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.768]-[philip]-[ 334µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.769]-[philip]-[ 337µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [2 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [2 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.770]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 13 | Ready: 0 | Executing: 0 | Verified: 3 >>> Executing command: /mv 4 - [17:13:04.770]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(4).comment("Load task 4 for status transition").execute_for_one(&self.ctx) - [17:13:04.770]-[philip]-[ 206µs]-[DEBUG]-SqlLogEntry - [Load task 4 for status transition] - [1 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(4).comment("Load task 4 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 4 for status transition] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 4)) LIMIT 1 - [17:13:04.771]-[philip]-[INFO]-Starting business action: Move 'Calibrate Guidance System' PLANNED => READY - [17:13:04.771]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) - [17:13:04.771]-[philip]-[ 179µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' PLANNED => READY] - [1 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Move 'Calibrate Guidance System' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' PLANNED => READY] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 4) - [17:13:04.771]-[philip]-[ 4401µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' PLANNED => READY] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' PLANNED => READY] - [1 rows affected] UPDATE task_data SET status = 1002, version = 2 WHERE id = 4 AND version = 1 - [17:13:04.776]-[philip]-[AUDIT]-Entity [Task(4)] UPDATED. [DOMAIN: Move 'Calibrate Guidance System' PLANNED => READY] {status: [PLANNED ➔ READY]} - [17:13:04.781]-[philip]-[ 3840µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(4)] UPDATED. [DOMAIN: Move 'Calibrate Guidance System' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (26, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 4) - [17:13:04.785]-[philip]-[AUDIT]-Entity [TaskExecutionLog(26)] CREATED. [DOMAIN: Move 'Calibrate Guidance System' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 26], task_id: [NULL ➔ 4], version: [NULL ➔ 1]} - [17:13:04.785]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Calibrate Guidance System' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [17:13:04.785]-[philip]-[INFO]-Finished business action: Moved task 4 to 'READY' (DDD transition) - [17:13:04.785]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.785]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.786]-[philip]-[ 498µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(26)] CREATED. [DOMAIN: Move 'Calibrate Guidance System' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 26], task_id: [NULL ➔ 4], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Calibrate Guidance System' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 4 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.787]-[philip]-[ 360µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.787]-[philip]-[ 339µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.788]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 12 | Ready: 1 | Executing: 0 | Verified: 3 >>> Executing command: /mv 4 - [17:13:04.789]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(4).comment("Load task 4 for status transition").execute_for_one(&self.ctx) - [17:13:04.789]-[philip]-[ 215µs]-[DEBUG]-SqlLogEntry - [Load task 4 for status transition] - [1 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(4).comment("Load task 4 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 4 for status transition] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 4)) LIMIT 1 - [17:13:04.789]-[philip]-[INFO]-Starting business action: Move 'Calibrate Guidance System' READY => EXECUTING - [17:13:04.789]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) - [17:13:04.790]-[philip]-[ 177µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' READY => EXECUTING] - [1 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Move 'Calibrate Guidance System' READY => EXECUTING + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' READY => EXECUTING] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 4) - [17:13:04.790]-[philip]-[ 4208µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' READY => EXECUTING] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' READY => EXECUTING] - [1 rows affected] UPDATE task_data SET status = 1003, version = 3 WHERE id = 4 AND version = 2 - [17:13:04.794]-[philip]-[AUDIT]-Entity [Task(4)] UPDATED. [DOMAIN: Move 'Calibrate Guidance System' READY => EXECUTING] {status: [READY ➔ EXECUTING]} - [17:13:04.799]-[philip]-[ 4391µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(4)] UPDATED. [DOMAIN: Move 'Calibrate Guidance System' READY => EXECUTING] {status: [READY ➔ EXECUTING]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (27, 'STATUS_CHANGED', 'Status changed from READY to EXECUTING.', 1, 4) - [17:13:04.804]-[philip]-[AUDIT]-Entity [TaskExecutionLog(27)] CREATED. [DOMAIN: Move 'Calibrate Guidance System' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 27], task_id: [NULL ➔ 4], version: [NULL ➔ 1]} - [17:13:04.804]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Calibrate Guidance System' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [17:13:04.804]-[philip]-[INFO]-Finished business action: Moved task 4 to 'EXECUTING' (DDD transition) - [17:13:04.804]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.804]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.805]-[philip]-[ 528µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(27)] CREATED. [DOMAIN: Move 'Calibrate Guidance System' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 27], task_id: [NULL ➔ 4], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Calibrate Guidance System' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 4 to 'EXECUTING' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.806]-[philip]-[ 323µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.806]-[philip]-[ 349µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.807]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 12 | Ready: 0 | Executing: 1 | Verified: 3 >>> Executing command: /mv 4 - [17:13:04.807]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(4).comment("Load task 4 for status transition").execute_for_one(&self.ctx) - [17:13:04.808]-[philip]-[ 206µs]-[DEBUG]-SqlLogEntry - [Load task 4 for status transition] - [1 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(4).comment("Load task 4 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 4 for status transition] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 4)) LIMIT 1 - [17:13:04.808]-[philip]-[INFO]-Starting business action: Move 'Calibrate Guidance System' EXECUTING => VERIFIED - [17:13:04.808]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) - [17:13:04.808]-[philip]-[ 180µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' EXECUTING => VERIFIED] - [1 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Move 'Calibrate Guidance System' EXECUTING => VERIFIED + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' EXECUTING => VERIFIED] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 4) - [17:13:04.809]-[philip]-[ 4641µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' EXECUTING => VERIFIED] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' EXECUTING => VERIFIED] - [1 rows affected] UPDATE task_data SET status = 1004, version = 4 WHERE id = 4 AND version = 3 - [17:13:04.814]-[philip]-[AUDIT]-Entity [Task(4)] UPDATED. [DOMAIN: Move 'Calibrate Guidance System' EXECUTING => VERIFIED] {status: [EXECUTING ➔ VERIFIED]} - [17:13:04.818]-[philip]-[ 3942µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(4)] UPDATED. [DOMAIN: Move 'Calibrate Guidance System' EXECUTING => VERIFIED] {status: [EXECUTING ➔ VERIFIED]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Calibrate Guidance System' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (28, 'STATUS_CHANGED', 'Status changed from EXECUTING to VERIFIED.', 1, 4) - [17:13:04.822]-[philip]-[AUDIT]-Entity [TaskExecutionLog(28)] CREATED. [DOMAIN: Move 'Calibrate Guidance System' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from EXECUTING to VERIFIED.'], id: [NULL ➔ 28], task_id: [NULL ➔ 4], version: [NULL ➔ 1]} - [17:13:04.822]-[philip]-[INFO]-Business Log: Status changed from EXECUTING to VERIFIED. [DOMAIN: Move 'Calibrate Guidance System' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] - [17:13:04.823]-[philip]-[INFO]-Finished business action: Moved task 4 to 'VERIFIED' (DDD transition) - [17:13:04.823]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.823]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.823]-[philip]-[ 481µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(28)] CREATED. [DOMAIN: Move 'Calibrate Guidance System' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from EXECUTING to VERIFIED.'], id: [NULL ➔ 28], task_id: [NULL ➔ 4], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from EXECUTING to VERIFIED. [DOMAIN: Move 'Calibrate Guidance System' EXECUTING => VERIFIED -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 4 to 'VERIFIED' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.824]-[philip]-[ 464µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.825]-[philip]-[ 426µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [2 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [2 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.826]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 12 | Ready: 0 | Executing: 0 | Verified: 4 >>> Executing command: /mv 5 - [17:13:04.827]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(5).comment("Load task 5 for status transition").execute_for_one(&self.ctx) - [17:13:04.827]-[philip]-[ 262µs]-[DEBUG]-SqlLogEntry - [Load task 5 for status transition] - [1 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(5).comment("Load task 5 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 5 for status transition] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 5)) LIMIT 1 - [17:13:04.828]-[philip]-[INFO]-Starting business action: Move 'Load Flight Parameters' PLANNED => READY - [17:13:04.828]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) - [17:13:04.828]-[philip]-[ 233µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Load Flight Parameters' PLANNED => READY] - [1 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Move 'Load Flight Parameters' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Load Flight Parameters' PLANNED => READY] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 5) - [17:13:04.829]-[philip]-[ 7225µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Load Flight Parameters' PLANNED => READY] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Load Flight Parameters' PLANNED => READY] - [1 rows affected] UPDATE task_data SET status = 1002, version = 2 WHERE id = 5 AND version = 1 - [17:13:04.836]-[philip]-[AUDIT]-Entity [Task(5)] UPDATED. [DOMAIN: Move 'Load Flight Parameters' PLANNED => READY] {status: [PLANNED ➔ READY]} - [17:13:04.843]-[philip]-[ 4625µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Load Flight Parameters' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(5)] UPDATED. [DOMAIN: Move 'Load Flight Parameters' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Load Flight Parameters' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (29, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 5) - [17:13:04.848]-[philip]-[AUDIT]-Entity [TaskExecutionLog(29)] CREATED. [DOMAIN: Move 'Load Flight Parameters' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 29], task_id: [NULL ➔ 5], version: [NULL ➔ 1]} - [17:13:04.848]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Load Flight Parameters' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [17:13:04.848]-[philip]-[INFO]-Finished business action: Moved task 5 to 'READY' (DDD transition) - [17:13:04.849]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.849]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.849]-[philip]-[ 568µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(29)] CREATED. [DOMAIN: Move 'Load Flight Parameters' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 29], task_id: [NULL ➔ 5], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Load Flight Parameters' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 5 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.850]-[philip]-[ 354µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.851]-[philip]-[ 397µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.852]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 11 | Ready: 1 | Executing: 0 | Verified: 4 >>> Executing command: /mv 5 - [17:13:04.852]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(5).comment("Load task 5 for status transition").execute_for_one(&self.ctx) - [17:13:04.852]-[philip]-[ 228µs]-[DEBUG]-SqlLogEntry - [Load task 5 for status transition] - [1 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(5).comment("Load task 5 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 5 for status transition] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 5)) LIMIT 1 - [17:13:04.853]-[philip]-[INFO]-Starting business action: Move 'Load Flight Parameters' READY => EXECUTING - [17:13:04.853]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) - [17:13:04.853]-[philip]-[ 213µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Load Flight Parameters' READY => EXECUTING] - [1 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Move 'Load Flight Parameters' READY => EXECUTING + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Load Flight Parameters' READY => EXECUTING] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 5) - [17:13:04.854]-[philip]-[ 4331µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Load Flight Parameters' READY => EXECUTING] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Load Flight Parameters' READY => EXECUTING] - [1 rows affected] UPDATE task_data SET status = 1003, version = 3 WHERE id = 5 AND version = 2 - [17:13:04.858]-[philip]-[AUDIT]-Entity [Task(5)] UPDATED. [DOMAIN: Move 'Load Flight Parameters' READY => EXECUTING] {status: [READY ➔ EXECUTING]} - [17:13:04.863]-[philip]-[ 4218µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Load Flight Parameters' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(5)] UPDATED. [DOMAIN: Move 'Load Flight Parameters' READY => EXECUTING] {status: [READY ➔ EXECUTING]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Load Flight Parameters' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (30, 'STATUS_CHANGED', 'Status changed from READY to EXECUTING.', 1, 5) - [17:13:04.867]-[philip]-[AUDIT]-Entity [TaskExecutionLog(30)] CREATED. [DOMAIN: Move 'Load Flight Parameters' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 30], task_id: [NULL ➔ 5], version: [NULL ➔ 1]} - [17:13:04.867]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Load Flight Parameters' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [17:13:04.868]-[philip]-[INFO]-Finished business action: Moved task 5 to 'EXECUTING' (DDD transition) - [17:13:04.868]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.868]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.868]-[philip]-[ 520µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(30)] CREATED. [DOMAIN: Move 'Load Flight Parameters' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 30], task_id: [NULL ➔ 5], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Load Flight Parameters' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 5 to 'EXECUTING' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.869]-[philip]-[ 354µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.870]-[philip]-[ 386µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.871]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 11 | Ready: 0 | Executing: 1 | Verified: 4 >>> Executing command: /mv 6 - [17:13:04.871]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(6).comment("Load task 6 for status transition").execute_for_one(&self.ctx) - [17:13:04.872]-[philip]-[ 264µs]-[DEBUG]-SqlLogEntry - [Load task 6 for status transition] - [1 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(6).comment("Load task 6 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 6 for status transition] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 6)) LIMIT 1 - [17:13:04.872]-[philip]-[INFO]-Starting business action: Move 'Initialize Ground Telemetry' PLANNED => READY - [17:13:04.872]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) - [17:13:04.873]-[philip]-[ 199µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Initialize Ground Telemetry' PLANNED => READY] - [1 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Move 'Initialize Ground Telemetry' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Initialize Ground Telemetry' PLANNED => READY] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 6) - [17:13:04.873]-[philip]-[ 4844µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Initialize Ground Telemetry' PLANNED => READY] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Initialize Ground Telemetry' PLANNED => READY] - [1 rows affected] UPDATE task_data SET status = 1002, version = 2 WHERE id = 6 AND version = 1 - [17:13:04.878]-[philip]-[AUDIT]-Entity [Task(6)] UPDATED. [DOMAIN: Move 'Initialize Ground Telemetry' PLANNED => READY] {status: [PLANNED ➔ READY]} - [17:13:04.883]-[philip]-[ 4395µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Initialize Ground Telemetry' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(6)] UPDATED. [DOMAIN: Move 'Initialize Ground Telemetry' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Initialize Ground Telemetry' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (31, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 6) - [17:13:04.888]-[philip]-[AUDIT]-Entity [TaskExecutionLog(31)] CREATED. [DOMAIN: Move 'Initialize Ground Telemetry' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 31], task_id: [NULL ➔ 6], version: [NULL ➔ 1]} - [17:13:04.888]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Initialize Ground Telemetry' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [17:13:04.888]-[philip]-[INFO]-Finished business action: Moved task 6 to 'READY' (DDD transition) - [17:13:04.888]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.888]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.888]-[philip]-[ 590µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(31)] CREATED. [DOMAIN: Move 'Initialize Ground Telemetry' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 31], task_id: [NULL ➔ 6], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Initialize Ground Telemetry' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 6 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.890]-[philip]-[ 383µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.890]-[philip]-[ 379µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.891]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 10 | Ready: 1 | Executing: 1 | Verified: 4 >>> Executing command: /mv 6 - [17:13:04.892]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(6).comment("Load task 6 for status transition").execute_for_one(&self.ctx) - [17:13:04.892]-[philip]-[ 244µs]-[DEBUG]-SqlLogEntry - [Load task 6 for status transition] - [1 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(6).comment("Load task 6 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 6 for status transition] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 6)) LIMIT 1 - [17:13:04.892]-[philip]-[INFO]-Starting business action: Move 'Initialize Ground Telemetry' READY => EXECUTING - [17:13:04.892]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) - [17:13:04.893]-[philip]-[ 210µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Initialize Ground Telemetry' READY => EXECUTING] - [1 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Move 'Initialize Ground Telemetry' READY => EXECUTING + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Initialize Ground Telemetry' READY => EXECUTING] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 6) - [17:13:04.893]-[philip]-[ 4201µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Initialize Ground Telemetry' READY => EXECUTING] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Initialize Ground Telemetry' READY => EXECUTING] - [1 rows affected] UPDATE task_data SET status = 1003, version = 3 WHERE id = 6 AND version = 2 - [17:13:04.898]-[philip]-[AUDIT]-Entity [Task(6)] UPDATED. [DOMAIN: Move 'Initialize Ground Telemetry' READY => EXECUTING] {status: [READY ➔ EXECUTING]} - [17:13:04.903]-[philip]-[ 4137µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Initialize Ground Telemetry' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(6)] UPDATED. [DOMAIN: Move 'Initialize Ground Telemetry' READY => EXECUTING] {status: [READY ➔ EXECUTING]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Initialize Ground Telemetry' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (32, 'STATUS_CHANGED', 'Status changed from READY to EXECUTING.', 1, 6) - [17:13:04.907]-[philip]-[AUDIT]-Entity [TaskExecutionLog(32)] CREATED. [DOMAIN: Move 'Initialize Ground Telemetry' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 32], task_id: [NULL ➔ 6], version: [NULL ➔ 1]} - [17:13:04.907]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Initialize Ground Telemetry' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [17:13:04.907]-[philip]-[INFO]-Finished business action: Moved task 6 to 'EXECUTING' (DDD transition) - [17:13:04.907]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.907]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.908]-[philip]-[ 549µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(32)] CREATED. [DOMAIN: Move 'Initialize Ground Telemetry' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 32], task_id: [NULL ➔ 6], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Initialize Ground Telemetry' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 6 to 'EXECUTING' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.909]-[philip]-[ 378µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.910]-[philip]-[ 391µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.910]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 10 | Ready: 0 | Executing: 2 | Verified: 4 >>> Executing command: /mv 7 - [17:13:04.911]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(7).comment("Load task 7 for status transition").execute_for_one(&self.ctx) - [17:13:04.911]-[philip]-[ 227µs]-[DEBUG]-SqlLogEntry - [Load task 7 for status transition] - [1 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(7).comment("Load task 7 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 7 for status transition] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 7)) LIMIT 1 - [17:13:04.911]-[philip]-[INFO]-Starting business action: Move 'Review Telemetry Anomaly' PLANNED => READY - [17:13:04.912]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) - [17:13:04.912]-[philip]-[ 201µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Telemetry Anomaly' PLANNED => READY] - [1 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Move 'Review Telemetry Anomaly' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Telemetry Anomaly' PLANNED => READY] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 7) - [17:13:04.912]-[philip]-[ 4109µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Telemetry Anomaly' PLANNED => READY] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Telemetry Anomaly' PLANNED => READY] - [1 rows affected] UPDATE task_data SET status = 1002, version = 2 WHERE id = 7 AND version = 1 - [17:13:04.917]-[philip]-[AUDIT]-Entity [Task(7)] UPDATED. [DOMAIN: Move 'Review Telemetry Anomaly' PLANNED => READY] {status: [PLANNED ➔ READY]} - [17:13:04.921]-[philip]-[ 4196µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Telemetry Anomaly' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(7)] UPDATED. [DOMAIN: Move 'Review Telemetry Anomaly' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Telemetry Anomaly' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (33, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 7) - [17:13:04.926]-[philip]-[AUDIT]-Entity [TaskExecutionLog(33)] CREATED. [DOMAIN: Move 'Review Telemetry Anomaly' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 33], task_id: [NULL ➔ 7], version: [NULL ➔ 1]} - [17:13:04.926]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Review Telemetry Anomaly' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [17:13:04.926]-[philip]-[INFO]-Finished business action: Moved task 7 to 'READY' (DDD transition) - [17:13:04.926]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.926]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.926]-[philip]-[ 467µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(33)] CREATED. [DOMAIN: Move 'Review Telemetry Anomaly' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 33], task_id: [NULL ➔ 7], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Review Telemetry Anomaly' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 7 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.927]-[philip]-[ 318µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.928]-[philip]-[ 343µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.929]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 9 | Ready: 1 | Executing: 2 | Verified: 4 >>> Executing command: /mv 7 - [17:13:04.929]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(7).comment("Load task 7 for status transition").execute_for_one(&self.ctx) - [17:13:04.929]-[philip]-[ 225µs]-[DEBUG]-SqlLogEntry - [Load task 7 for status transition] - [1 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(7).comment("Load task 7 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 7 for status transition] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 7)) LIMIT 1 - [17:13:04.930]-[philip]-[INFO]-Starting business action: Move 'Review Telemetry Anomaly' READY => EXECUTING - [17:13:04.930]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) - [17:13:04.930]-[philip]-[ 176µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Telemetry Anomaly' READY => EXECUTING] - [1 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Move 'Review Telemetry Anomaly' READY => EXECUTING + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Telemetry Anomaly' READY => EXECUTING] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 7) - [17:13:04.931]-[philip]-[ 4716µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Telemetry Anomaly' READY => EXECUTING] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Telemetry Anomaly' READY => EXECUTING] - [1 rows affected] UPDATE task_data SET status = 1003, version = 3 WHERE id = 7 AND version = 2 - [17:13:04.936]-[philip]-[AUDIT]-Entity [Task(7)] UPDATED. [DOMAIN: Move 'Review Telemetry Anomaly' READY => EXECUTING] {status: [READY ➔ EXECUTING]} - [17:13:04.941]-[philip]-[ 4118µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Telemetry Anomaly' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(7)] UPDATED. [DOMAIN: Move 'Review Telemetry Anomaly' READY => EXECUTING] {status: [READY ➔ EXECUTING]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Telemetry Anomaly' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (34, 'STATUS_CHANGED', 'Status changed from READY to EXECUTING.', 1, 7) - [17:13:04.945]-[philip]-[AUDIT]-Entity [TaskExecutionLog(34)] CREATED. [DOMAIN: Move 'Review Telemetry Anomaly' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 34], task_id: [NULL ➔ 7], version: [NULL ➔ 1]} - [17:13:04.945]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Review Telemetry Anomaly' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [17:13:04.945]-[philip]-[INFO]-Finished business action: Moved task 7 to 'EXECUTING' (DDD transition) - [17:13:04.945]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.945]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.945]-[philip]-[ 445µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(34)] CREATED. [DOMAIN: Move 'Review Telemetry Anomaly' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 34], task_id: [NULL ➔ 7], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Review Telemetry Anomaly' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 7 to 'EXECUTING' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.946]-[philip]-[ 321µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.947]-[philip]-[ 350µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.948]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 9 | Ready: 0 | Executing: 3 | Verified: 4 >>> Executing command: /mv 8 - [17:13:04.948]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(8).comment("Load task 8 for status transition").execute_for_one(&self.ctx) - [17:13:04.948]-[philip]-[ 209µs]-[DEBUG]-SqlLogEntry - [Load task 8 for status transition] - [1 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(8).comment("Load task 8 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 8 for status transition] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 8)) LIMIT 1 - [17:13:04.949]-[philip]-[INFO]-Starting business action: Move 'Review Launch Criteria' PLANNED => READY - [17:13:04.949]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) - [17:13:04.949]-[philip]-[ 193µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Launch Criteria' PLANNED => READY] - [1 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Move 'Review Launch Criteria' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Launch Criteria' PLANNED => READY] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 8) - [17:13:04.950]-[philip]-[ 4067µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Launch Criteria' PLANNED => READY] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Launch Criteria' PLANNED => READY] - [1 rows affected] UPDATE task_data SET status = 1002, version = 2 WHERE id = 8 AND version = 1 - [17:13:04.954]-[philip]-[AUDIT]-Entity [Task(8)] UPDATED. [DOMAIN: Move 'Review Launch Criteria' PLANNED => READY] {status: [PLANNED ➔ READY]} - [17:13:04.959]-[philip]-[ 4302µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Launch Criteria' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(8)] UPDATED. [DOMAIN: Move 'Review Launch Criteria' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Launch Criteria' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (35, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 8) - [17:13:04.964]-[philip]-[AUDIT]-Entity [TaskExecutionLog(35)] CREATED. [DOMAIN: Move 'Review Launch Criteria' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 35], task_id: [NULL ➔ 8], version: [NULL ➔ 1]} - [17:13:04.964]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Review Launch Criteria' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [17:13:04.964]-[philip]-[INFO]-Finished business action: Moved task 8 to 'READY' (DDD transition) - [17:13:04.964]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.964]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.964]-[philip]-[ 397µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(35)] CREATED. [DOMAIN: Move 'Review Launch Criteria' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 35], task_id: [NULL ➔ 8], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Review Launch Criteria' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 8 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.965]-[philip]-[ 273µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.966]-[philip]-[ 305µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.966]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 8 | Ready: 1 | Executing: 3 | Verified: 4 >>> Executing command: /mv 8 - [17:13:04.967]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(8).comment("Load task 8 for status transition").execute_for_one(&self.ctx) - [17:13:04.967]-[philip]-[ 218µs]-[DEBUG]-SqlLogEntry - [Load task 8 for status transition] - [1 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(8).comment("Load task 8 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 8 for status transition] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 8)) LIMIT 1 - [17:13:04.967]-[philip]-[INFO]-Starting business action: Move 'Review Launch Criteria' READY => EXECUTING - [17:13:04.967]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) - [17:13:04.968]-[philip]-[ 189µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Launch Criteria' READY => EXECUTING] - [1 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Move 'Review Launch Criteria' READY => EXECUTING + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Launch Criteria' READY => EXECUTING] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 8) - [17:13:04.968]-[philip]-[ 4148µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Launch Criteria' READY => EXECUTING] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Launch Criteria' READY => EXECUTING] - [1 rows affected] UPDATE task_data SET status = 1003, version = 3 WHERE id = 8 AND version = 2 - [17:13:04.972]-[philip]-[AUDIT]-Entity [Task(8)] UPDATED. [DOMAIN: Move 'Review Launch Criteria' READY => EXECUTING] {status: [READY ➔ EXECUTING]} - [17:13:04.978]-[philip]-[ 3702µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Launch Criteria' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(8)] UPDATED. [DOMAIN: Move 'Review Launch Criteria' READY => EXECUTING] {status: [READY ➔ EXECUTING]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Review Launch Criteria' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (36, 'STATUS_CHANGED', 'Status changed from READY to EXECUTING.', 1, 8) - [17:13:04.982]-[philip]-[AUDIT]-Entity [TaskExecutionLog(36)] CREATED. [DOMAIN: Move 'Review Launch Criteria' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 36], task_id: [NULL ➔ 8], version: [NULL ➔ 1]} - [17:13:04.982]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Review Launch Criteria' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] - [17:13:04.982]-[philip]-[INFO]-Finished business action: Moved task 8 to 'EXECUTING' (DDD transition) - [17:13:04.982]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.982]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.982]-[philip]-[ 391µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(36)] CREATED. [DOMAIN: Move 'Review Launch Criteria' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from READY to EXECUTING.'], id: [NULL ➔ 36], task_id: [NULL ➔ 8], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from READY to EXECUTING. [DOMAIN: Move 'Review Launch Criteria' READY => EXECUTING -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 8 to 'EXECUTING' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.983]-[philip]-[ 274µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:04.984]-[philip]-[ 311µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [3 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:04.984]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 8 | Ready: 0 | Executing: 4 | Verified: 4 >>> Executing command: /mv 9 - [17:13:04.985]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(9).comment("Load task 9 for status transition").execute_for_one(&self.ctx) - [17:13:04.985]-[philip]-[ 205µs]-[DEBUG]-SqlLogEntry - [Load task 9 for status transition] - [1 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(9).comment("Load task 9 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 9 for status transition] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 9)) LIMIT 1 - [17:13:04.985]-[philip]-[INFO]-Starting business action: Move 'Range Safety Check' PLANNED => READY - [17:13:04.985]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) - [17:13:04.986]-[philip]-[ 152µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Range Safety Check' PLANNED => READY] - [1 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Move 'Range Safety Check' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Range Safety Check' PLANNED => READY] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 9) - [17:13:04.986]-[philip]-[ 3984µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Range Safety Check' PLANNED => READY] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Range Safety Check' PLANNED => READY] - [1 rows affected] UPDATE task_data SET status = 1002, version = 2 WHERE id = 9 AND version = 1 - [17:13:04.990]-[philip]-[AUDIT]-Entity [Task(9)] UPDATED. [DOMAIN: Move 'Range Safety Check' PLANNED => READY] {status: [PLANNED ➔ READY]} - [17:13:04.994]-[philip]-[ 3591µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Range Safety Check' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(9)] UPDATED. [DOMAIN: Move 'Range Safety Check' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Range Safety Check' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (37, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 9) - [17:13:04.998]-[philip]-[AUDIT]-Entity [TaskExecutionLog(37)] CREATED. [DOMAIN: Move 'Range Safety Check' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 37], task_id: [NULL ➔ 9], version: [NULL ➔ 1]} - [17:13:04.998]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Range Safety Check' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [17:13:04.998]-[philip]-[INFO]-Finished business action: Moved task 9 to 'READY' (DDD transition) - [17:13:04.998]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:04.998]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:04.998]-[philip]-[ 365µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(37)] CREATED. [DOMAIN: Move 'Range Safety Check' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 37], task_id: [NULL ➔ 9], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Range Safety Check' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 9 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:04.999]-[philip]-[ 274µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:05.000]-[philip]-[ 307µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:05.000]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 7 | Ready: 1 | Executing: 4 | Verified: 4 >>> Executing command: /mv 10 - [17:13:05.001]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(10).comment("Load task 10 for status transition").execute_for_one(&self.ctx) - [17:13:05.001]-[philip]-[ 195µs]-[DEBUG]-SqlLogEntry - [Load task 10 for status transition] - [1 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(10).comment("Load task 10 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 10 for status transition] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 10)) LIMIT 1 - [17:13:05.001]-[philip]-[INFO]-Starting business action: Move 'Begin Propellant Loading' PLANNED => READY - [17:13:05.001]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) - [17:13:05.002]-[philip]-[ 151µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Begin Propellant Loading' PLANNED => READY] - [1 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Move 'Begin Propellant Loading' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Begin Propellant Loading' PLANNED => READY] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 10) - [17:13:05.002]-[philip]-[ 3763µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Begin Propellant Loading' PLANNED => READY] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Begin Propellant Loading' PLANNED => READY] - [1 rows affected] UPDATE task_data SET status = 1002, version = 2 WHERE id = 10 AND version = 1 - [17:13:05.006]-[philip]-[AUDIT]-Entity [Task(10)] UPDATED. [DOMAIN: Move 'Begin Propellant Loading' PLANNED => READY] {status: [PLANNED ➔ READY]} - [17:13:05.010]-[philip]-[ 3872µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Begin Propellant Loading' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(10)] UPDATED. [DOMAIN: Move 'Begin Propellant Loading' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Begin Propellant Loading' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (38, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 10) - [17:13:05.014]-[philip]-[AUDIT]-Entity [TaskExecutionLog(38)] CREATED. [DOMAIN: Move 'Begin Propellant Loading' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 38], task_id: [NULL ➔ 10], version: [NULL ➔ 1]} - [17:13:05.014]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Begin Propellant Loading' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [17:13:05.015]-[philip]-[INFO]-Finished business action: Moved task 10 to 'READY' (DDD transition) - [17:13:05.015]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:05.015]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:05.015]-[philip]-[ 415µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(38)] CREATED. [DOMAIN: Move 'Begin Propellant Loading' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 38], task_id: [NULL ➔ 10], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Begin Propellant Loading' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 10 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:05.016]-[philip]-[ 289µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:05.016]-[philip]-[ 286µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:05.017]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 6 | Ready: 2 | Executing: 4 | Verified: 4 >>> Executing command: /mv 11 - [17:13:05.017]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(11).comment("Load task 11 for status transition").execute_for_one(&self.ctx) - [17:13:05.017]-[philip]-[ 162µs]-[DEBUG]-SqlLogEntry - [Load task 11 for status transition] - [1 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(11).comment("Load task 11 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 11 for status transition] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 11)) LIMIT 1 - [17:13:05.018]-[philip]-[INFO]-Starting business action: Move 'Complete Cryogenic Fueling' PLANNED => READY - [17:13:05.018]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) - [17:13:05.018]-[philip]-[ 140µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Complete Cryogenic Fueling' PLANNED => READY] - [1 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Move 'Complete Cryogenic Fueling' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Complete Cryogenic Fueling' PLANNED => READY] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 11) - [17:13:05.018]-[philip]-[ 3632µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Complete Cryogenic Fueling' PLANNED => READY] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Complete Cryogenic Fueling' PLANNED => READY] - [1 rows affected] UPDATE task_data SET status = 1002, version = 2 WHERE id = 11 AND version = 1 - [17:13:05.022]-[philip]-[AUDIT]-Entity [Task(11)] UPDATED. [DOMAIN: Move 'Complete Cryogenic Fueling' PLANNED => READY] {status: [PLANNED ➔ READY]} - [17:13:05.027]-[philip]-[ 4220µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Complete Cryogenic Fueling' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(11)] UPDATED. [DOMAIN: Move 'Complete Cryogenic Fueling' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Complete Cryogenic Fueling' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (39, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 11) - [17:13:05.031]-[philip]-[AUDIT]-Entity [TaskExecutionLog(39)] CREATED. [DOMAIN: Move 'Complete Cryogenic Fueling' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 39], task_id: [NULL ➔ 11], version: [NULL ➔ 1]} - [17:13:05.031]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Complete Cryogenic Fueling' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [17:13:05.031]-[philip]-[INFO]-Finished business action: Moved task 11 to 'READY' (DDD transition) - [17:13:05.032]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:05.032]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:05.032]-[philip]-[ 382µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(39)] CREATED. [DOMAIN: Move 'Complete Cryogenic Fueling' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 39], task_id: [NULL ➔ 11], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Complete Cryogenic Fueling' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 11 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:05.033]-[philip]-[ 252µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:05.033]-[philip]-[ 237µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:05.034]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 5 | Ready: 3 | Executing: 4 | Verified: 4 >>> Executing command: /mv 12 - [17:13:05.034]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(12).comment("Load task 12 for status transition").execute_for_one(&self.ctx) - [17:13:05.034]-[philip]-[ 180µs]-[DEBUG]-SqlLogEntry - [Load task 12 for status transition] - [1 rows returned] + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().with_id_is(12).comment("Load task 12 for status transition").execute_for_one(&self.ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Load task 12 for status transition] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE ((version > 0) AND (id = 12)) LIMIT 1 - [17:13:05.034]-[philip]-[INFO]-Starting business action: Move 'Arm Flight Termination System' PLANNED => READY - [17:13:05.035]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) - [17:13:05.035]-[philip]-[ 130µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Arm Flight Termination System' PLANNED => READY] - [1 rows returned] + [TIME]-[philip]-[INFO]-Starting business action: Move 'Arm Flight Termination System' PLANNED => READY + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::task_execution_logs().comment("Generate execution log for action 'STATUS_CHANGED'").new_entity(ctx) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Arm Flight Termination System' PLANNED => READY] - [1 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (id = 12) - [17:13:05.035]-[philip]-[ 3746µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Arm Flight Termination System' PLANNED => READY] - [1 rows affected] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Arm Flight Termination System' PLANNED => READY] - [1 rows affected] UPDATE task_data SET status = 1002, version = 2 WHERE id = 12 AND version = 1 - [17:13:05.039]-[philip]-[AUDIT]-Entity [Task(12)] UPDATED. [DOMAIN: Move 'Arm Flight Termination System' PLANNED => READY] {status: [PLANNED ➔ READY]} - [17:13:05.043]-[philip]-[ 3555µs]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Arm Flight Termination System' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] + [TIME]-[philip]-[AUDIT]-Entity [Task(12)] UPDATED. [DOMAIN: Move 'Arm Flight Termination System' PLANNED => READY] {status: [PLANNED ➔ READY]} + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [DOMAIN: Move 'Arm Flight Termination System' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [1 rows affected] INSERT INTO task_execution_log_data (id, action, detail, version, task) VALUES (40, 'STATUS_CHANGED', 'Status changed from PLANNED to READY.', 1, 12) - [17:13:05.047]-[philip]-[AUDIT]-Entity [TaskExecutionLog(40)] CREATED. [DOMAIN: Move 'Arm Flight Termination System' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 40], task_id: [NULL ➔ 12], version: [NULL ➔ 1]} - [17:13:05.047]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Arm Flight Termination System' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] - [17:13:05.047]-[philip]-[INFO]-Finished business action: Moved task 12 to 'READY' (DDD transition) - [17:13:05.047]-[philip]-[INFO]-Starting query: Get active tasks - [17:13:05.047]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) - [17:13:05.047]-[philip]-[ 333µs]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] + [TIME]-[philip]-[AUDIT]-Entity [TaskExecutionLog(40)] CREATED. [DOMAIN: Move 'Arm Flight Termination System' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] {action: [NULL ➔ 'STATUS_CHANGED'], detail: [NULL ➔ 'Status changed from PLANNED to READY.'], id: [NULL ➔ 40], task_id: [NULL ➔ 12], version: [NULL ➔ 1]} + [TIME]-[philip]-[INFO]-Business Log: Status changed from PLANNED to READY. [DOMAIN: Move 'Arm Flight Termination System' PLANNED => READY -> Generate execution log for action 'STATUS_CHANGED'] + [TIME]-[philip]-[INFO]-Finished business action: Moved task 12 to 'READY' (DDD transition) + [TIME]-[philip]-[INFO]-Starting query: Get active tasks + [TIME]-[philip]-[INFO]-Execute TeaQL - Q::tasks().comment("Get active tasks").facet_by_status_as("status_stats", Q::task_status().comment("Count status").count_tasks()) + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks] - [16 rows returned] SELECT id, name, version, status AS status_id, platform AS platform_id FROM task_data WHERE (version > 0) - [17:13:05.048]-[philip]-[ 251µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status] - [5 rows returned] SELECT id, name, code, color, display_order, progress, version FROM task_status_data WHERE (version > 0) - [17:13:05.048]-[philip]-[ 208µs]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] + [TIME]-[philip]-[DURATION]-[DEBUG]-SqlLogEntry - [Get active tasks -> status_stats -> Count status -> count_tasks] - [4 rows returned] SELECT status, COUNT(*) AS count_tasks FROM task_data WHERE ((version > 0) AND (version > 0) AND (status IN (1, 1001, 1002, 1003, 1004))) GROUP BY status - [17:13:05.049]-[philip]-[INFO]-Finished query: Get active tasks + [TIME]-[philip]-[INFO]-Finished query: Get active tasks -------------------------------------------------------------------------------- [Facet] Planned: 4 | Ready: 4 | Executing: 4 | Verified: 4 @@ -1193,12 +1180,3 @@ running 1 test Planned: 4 | Ready: 4 | Executing: 4 | Verified: 4 ================================================== -test tests_ui::test_mission_simulation ... ok - -test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 9 filtered out; finished in 0.79s - - -running 0 tests - -test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 8 filtered out; finished in 0.00s - diff --git a/src/app.rs b/src/app.rs index d867754..728fa15 100644 --- a/src/app.rs +++ b/src/app.rs @@ -53,10 +53,10 @@ impl App { log_scroll_offset: 0, hide_logs: std::env::args().any(|arg| arg == "-c"), }; - app.service.log_info("TeaQL traces one business request into generated SQL, facets, and audit records."); - app.service.log_info("System successfully initialized."); - app.service.log_info("Pre-loaded SQLite database 'robot_kanban.db'."); - app.service.log_info("TeaQL v1.0.3: Comment Propagation is fully active."); + app.service.emit_ui_message("TeaQL traces one business request into generated SQL, facets, and audit records."); + app.service.emit_ui_message("System successfully initialized."); + app.service.emit_ui_message("Pre-loaded SQLite database 'robot_kanban.db'."); + app.service.emit_ui_message("TeaQL v1.0.3: Comment Propagation is fully active."); app } diff --git a/src/commands.rs b/src/commands.rs index d7e7719..52ebb0f 100644 --- a/src/commands.rs +++ b/src/commands.rs @@ -21,21 +21,21 @@ pub async fn execute(app: &mut App) -> Result<(), Box> { match cmd.as_str() { "exit" | "quit" | "q" => { app.should_quit = true; - app.service.log_info("Exiting application..."); + app.service.emit_ui_message("Exiting application..."); } "search" | "s" => { if args.is_empty() { app.search_term = None; - app.service.log_info("Cleared active search query."); + app.service.emit_ui_message("Cleared active search query."); } else { app.search_term = Some(args.to_owned()); - app.service.log_info(&format!("Searching for tasks by keyword: '{}'", args)); + app.service.emit_ui_message(&format!("Searching for tasks by keyword: '{}'", args)); } app.reload_data().await?; } "add" => { if args.is_empty() { - app.service.log_info("Error: Task name cannot be empty. Usage: /add "); + app.service.emit_ui_message("Error: Task name cannot be empty. Usage: /add "); } else { let _next_id = app.service.add_task(args).await?; app.reload_data().await?; @@ -43,18 +43,18 @@ pub async fn execute(app: &mut App) -> Result<(), Box> { } "delete" | "del" => { if args.is_empty() { - app.service.log_info("Error: Missing task ID. Usage: /del "); + app.service.emit_ui_message("Error: Missing task ID. Usage: /del "); } else if let Ok(id) = args.parse::() { if app.service.delete_task(id).await? { app.reload_data().await?; } } else { - app.service.log_info(&format!("Error: Invalid task ID '{}'", args)); + app.service.emit_ui_message(&format!("Error: Invalid task ID '{}'", args)); } } "move" | "mv" => { if args.is_empty() { - app.service.log_info("Error: Missing arguments. Usage: /mv [planned|ready|executing|verified|next]"); + app.service.emit_ui_message("Error: Missing arguments. Usage: /mv [planned|ready|executing|verified|next]"); app.input.clear(); return Ok(()); } @@ -84,11 +84,11 @@ pub async fn execute(app: &mut App) -> Result<(), Box> { } } } else { - app.service.log_info(&format!("Error: Invalid task ID '{}'", move_parts[0])); + app.service.emit_ui_message(&format!("Error: Invalid task ID '{}'", move_parts[0])); } } _ => { - app.service.log_info(&format!("Unknown command: '/{}'. Type a task name directly or use /mv, /del, /s, /q", cmd)); + app.service.emit_ui_message(&format!("Unknown command: '/{}'. Type a task name directly or use /mv, /del, /s, /q", cmd)); } } } else { diff --git a/src/logging.rs b/src/logging.rs index 93acd8f..f8f952c 100644 --- a/src/logging.rs +++ b/src/logging.rs @@ -1,8 +1,12 @@ +#![allow(clippy::disallowed_types, clippy::disallowed_methods)] +// Infrastructure layer — allowed to use chrono::Utc, std::fs, etc. + use teaql_runtime::{ UserContext, EntityEvent, EntityEventKind, EntityEventSink, RuntimeError, UnifiedLogEntry, UnifiedLogBuffer, LogPayload, }; use teaql_core::Value; +use teaql_tool_core::{AuditLevel, AuditSink, EnvAuditConfig}; /// Extract just the OS username from the full user identifier (e.g. "philip@pid-123.tid-1" → "philip") pub fn short_user(ctx: &UserContext) -> String { @@ -60,33 +64,52 @@ pub fn is_bootstrap_message(msg: &str) -> bool { || msg.ends_with(" entities discovered") } -pub fn log_info(ctx: &UserContext, message: &str) { - let timestamp = chrono::Local::now().format("%H:%M:%S%.3f").to_string(); +/// Retrieve the AuditConfig from UserContext, or fall back to production defaults. +fn get_env_config(ctx: &UserContext) -> EnvAuditConfig { + ctx.get_resource::() + .cloned() + .unwrap_or_else(|| teaql_tool_core::audit_config_from_env(&[])) +} + +/// Write a formatted message to the UnifiedLogBuffer for TUI display. +/// Infrastructure-only helper — not exposed to the application layer. +fn write_to_buffer(ctx: &UserContext, message: &str) { let user = short_user(ctx); + let timestamp = chrono::Utc::now().format("%H:%M:%S%.3f").to_string(); let log_line = format!("[{}]-[{}]-[INFO]-{}", timestamp, user, message); - - // Write to TUI buffer + if let Some(buf) = ctx.get_resource::() { if let Ok(mut entries) = buf.entries.lock() { - entries.push(teaql_runtime::UnifiedLogEntry { + entries.push(UnifiedLogEntry { timestamp: std::time::SystemTime::now(), - user_identifier: Some(user.clone()), + user_identifier: Some(user), trace_chain: Vec::new(), payload: LogPayload::Info(teaql_runtime::InfoLogEntry { - message: log_line.clone(), + message: log_line, }), }); } } +} - // Also write to app.log for completeness +/// Emit a UI feedback message to the TUI display buffer. +/// +/// This is NOT an audit/logging API — it is a UI event emitter for +/// messages like "System initialized", "Unknown command", etc. +/// It writes to the UnifiedLogBuffer only (no file I/O). +pub fn emit_ui_message(ctx: &UserContext, message: &str) { + write_to_buffer(ctx, message); +} + +/// Write a line to a file, appending. Infrastructure-only. +fn append_to_file(path: &str, line: &str) { if let Ok(mut file) = std::fs::OpenOptions::new() .create(true) .append(true) - .open("app.log") + .open(path) { use std::io::Write; - let _ = writeln!(file, "{}", log_line); + let _ = writeln!(file, "{}", line); } } @@ -94,8 +117,8 @@ pub struct AppAuditSink; impl EntityEventSink for AppAuditSink { fn on_event(&self, ctx: &UserContext, event: &EntityEvent) -> Result<(), RuntimeError> { - // Bootstrap events are handled separately — - // they are written to the UnifiedLogBuffer for the startup screen to observe. + // Bootstrap events are always written to TUI buffer (not controlled by AuditConfig) + // because they are part of the startup UX, not business audit. match event.kind { EntityEventKind::SchemaCreated | EntityEventKind::SchemaVerified @@ -156,7 +179,18 @@ impl EntityEventSink for AppAuditSink { _ => {} } - let timestamp = chrono::Local::now().format("%H:%M:%S%.3f").to_string(); + // ── EnvAuditConfig-controlled entity event logging ───────────────── + let env_config = get_env_config(ctx); + + // Entity audit level from TEAQL_AUDIT env var. + // If Silent, skip all output. + let level = env_config.entity_level; + if level == AuditLevel::Silent { + return Ok(()); + } + let sink = env_config.sink; + + let timestamp = chrono::Utc::now().format("%H:%M:%S%.3f").to_string(); let user = short_user(ctx); let action_name = match event.kind { @@ -186,7 +220,30 @@ impl EntityEventSink for AppAuditSink { format!(" [{}]", trace) }; - // Build compact single-line audit for TUI and app.log + // ── Summary level: compact one-liner ───────────────────────────── + let summary_line = format!( + "[{}]-[{}]-[AUDIT]-Entity [{}] {}.{}", + timestamp, user, entity_identity, action_name, comment_part + ); + + if level == AuditLevel::Summary { + // Summary: write to TUI buffer only (no file, no field details) + if let Some(buf) = ctx.get_resource::() { + if let Ok(mut entries) = buf.entries.lock() { + entries.push(UnifiedLogEntry { + timestamp: std::time::SystemTime::now(), + user_identifier: Some(user.clone()), + trace_chain: event.trace_chain.clone(), + payload: LogPayload::Info(teaql_runtime::InfoLogEntry { + message: summary_line, + }), + }); + } + } + return Ok(()); + } + + // ── Full level and above: include field changes ────────────────── let mut field_changes = Vec::new(); for change in &event.changes { let old_str = format_field_val(&change.field, &change.old_value); @@ -201,43 +258,39 @@ impl EntityEventSink for AppAuditSink { format!(" {{{}}}", field_changes.join(", ")) }; - let audit_line = format!( - "[{}]-[{}]-[AUDIT]-Entity [{}] {}.{}{}", - timestamp, user, entity_identity, action_name, comment_part, fields_part - ); + let audit_line = format!("{}{}", summary_line, fields_part); + + // Write to app.log (if sink allows file output) + let write_file = matches!(sink, AuditSink::File | AuditSink::Both); + let write_stdout = matches!(sink, AuditSink::Stdout | AuditSink::Both); - // Write audit log to app.log - if let Ok(mut file) = std::fs::OpenOptions::new() - .create(true) - .append(true) - .open("app.log") - { - use std::io::Write; - let _ = writeln!(file, "{}", audit_line); + if write_file { + append_to_file("app.log", &audit_line); } - // Write audit log to TUI buffer - if let Some(buf) = ctx.get_resource::() { - if let Ok(mut entries) = buf.entries.lock() { - entries.push(UnifiedLogEntry { - timestamp: std::time::SystemTime::now(), - user_identifier: Some(user.clone()), - trace_chain: event.trace_chain.clone(), - payload: LogPayload::Info(teaql_runtime::InfoLogEntry { - message: audit_line, - }), - }); + // Write to TUI buffer (if sink allows stdout output) + if write_stdout { + if let Some(buf) = ctx.get_resource::() { + if let Ok(mut entries) = buf.entries.lock() { + entries.push(UnifiedLogEntry { + timestamp: std::time::SystemTime::now(), + user_identifier: Some(user.clone()), + trace_chain: event.trace_chain.clone(), + payload: LogPayload::Info(teaql_runtime::InfoLogEntry { + message: audit_line, + }), + }); + } } } - // If it's a business log, ALSO emit a Business Log line + // Business log for TaskExecutionLog creation let is_business_log = event.entity == "TaskExecutionLog" && action_name == "CREATED"; if is_business_log { let mut detail = String::new(); for change in &event.changes { if change.field == "detail" { detail = format_val_helper(&change.new_value); - // Remove quotes if any if detail.starts_with('\'') && detail.ends_with('\'') { detail = detail[1..detail.len()-1].to_owned(); } @@ -247,64 +300,50 @@ impl EntityEventSink for AppAuditSink { "[{}]-[{}]-[INFO]-Business Log: {}{}", timestamp, user, detail, comment_part ); - - // Write business log to app.log - if let Ok(mut file) = std::fs::OpenOptions::new() - .create(true) - .append(true) - .open("app.log") - { - use std::io::Write; - let _ = writeln!(file, "{}", business_line); + if write_file { + append_to_file("app.log", &business_line); } - - // Write business log to TUI buffer - if let Some(buf) = ctx.get_resource::() { - if let Ok(mut entries) = buf.entries.lock() { - entries.push(UnifiedLogEntry { - timestamp: std::time::SystemTime::now(), - user_identifier: Some(user.clone()), - trace_chain: event.trace_chain.clone(), - payload: LogPayload::Info(teaql_runtime::InfoLogEntry { - message: business_line, - }), - }); + if write_stdout { + if let Some(buf) = ctx.get_resource::() { + if let Ok(mut entries) = buf.entries.lock() { + entries.push(UnifiedLogEntry { + timestamp: std::time::SystemTime::now(), + user_identifier: Some(user.clone()), + trace_chain: event.trace_chain.clone(), + payload: LogPayload::Info(teaql_runtime::InfoLogEntry { + message: business_line, + }), + }); + } } } } - // Write to audit.log with the long format - let timestamp_with_date = chrono::Local::now().format("%Y-%m-%d %H:%M:%S%.3f").to_string(); - let audit_header = format!( - "[{}] - [{}] - [AUDIT] Entity [{}] {}.{}", - timestamp_with_date, user, entity_identity, action_name, comment_part - ); - let mut audit_lines = vec![audit_header]; - for change in &event.changes { - let old_str = format_field_val(&change.field, &change.old_value); - let new_str = format_field_val(&change.field, &change.new_value); - if old_str != new_str { - let detail = format!( - "[{}] - [{}] - [AUDIT] -> Field [{}]: {} ➔ {}", - timestamp_with_date, user, display_field_name(&change.field), old_str, new_str - ); - audit_lines.push(detail); - } - } - audit_lines.push(format!("[{}] - [{}] - [AUDIT] ------------------------------------------------------------", timestamp_with_date, user)); - - for line in &audit_lines { - if let Ok(mut file) = std::fs::OpenOptions::new() - .create(true) - .append(true) - .open("audit.log") - { - use std::io::Write; - let _ = writeln!(file, "{}", line); + // Write detailed audit.log (Full format with per-field breakdown) + if write_file { + let timestamp_with_date = chrono::Utc::now().format("%Y-%m-%d %H:%M:%S%.3f").to_string(); + let audit_header = format!( + "[{}] - [{}] - [AUDIT] Entity [{}] {}.{}", + timestamp_with_date, user, entity_identity, action_name, comment_part + ); + append_to_file("audit.log", &audit_header); + for change in &event.changes { + let old_str = format_field_val(&change.field, &change.old_value); + let new_str = format_field_val(&change.field, &change.new_value); + if old_str != new_str { + let detail = format!( + "[{}] - [{}] - [AUDIT] -> Field [{}]: {} ➔ {}", + timestamp_with_date, user, display_field_name(&change.field), old_str, new_str + ); + append_to_file("audit.log", &detail); + } } + append_to_file("audit.log", &format!( + "[{}] - [{}] - [AUDIT] ------------------------------------------------------------", + timestamp_with_date, user + )); } Ok(()) } } - diff --git a/src/main.rs b/src/main.rs index dcb5718..b4975de 100644 --- a/src/main.rs +++ b/src/main.rs @@ -25,7 +25,7 @@ async fn main() -> Result<(), Box> { let mut app = App::new(service); app.reload_data().await?; - app.service.log_info("================================================================================================="); + app.service.emit_ui_message("================================================================================================="); app.run(&mut terminal).await?; diff --git a/src/service.rs b/src/service.rs index 9d543e3..efbad27 100644 --- a/src/service.rs +++ b/src/service.rs @@ -2,8 +2,7 @@ use std::error::Error; use std::sync::Mutex; use robot_kanban::{Q, Task, TaskExecutionLog}; use teaql_provider_rusqlite::{ - ensure_rusqlite_schema_for, RusqliteIdSpaceGenerator, - RusqliteMutationExecutor, RusqliteProviderExt, + RusqliteMutationExecutor }; use teaql_runtime::{ UserContext, UnifiedLogBuffer, LogPayload, @@ -45,7 +44,7 @@ impl TaskDomainBehavior for Task { } let comment = format!("Create task '{}'", cmd.name); - crate::logging::log_info(ctx, &format!("Execute TeaQL - Q::tasks().comment({:?}).new_entity(ctx)", comment)); + crate::logging::emit_ui_message(ctx, &format!("Execute TeaQL - Q::tasks().comment({:?}).new_entity(ctx)", comment)); let mut task = Q::tasks().comment(&comment).new_entity(ctx); task.update_id(next_id) .update_name(cmd.name.clone()) @@ -57,7 +56,7 @@ impl TaskDomainBehavior for Task { fn generate_execution_log(&self, action: &str, detail: &str, ctx: &UserContext) -> TaskExecutionLog { let comment = format!("Generate execution log for action '{}'", action); - crate::logging::log_info(ctx, &format!("Execute TeaQL - Q::task_execution_logs().comment({:?}).new_entity(ctx)", comment)); + crate::logging::emit_ui_message(ctx, &format!("Execute TeaQL - Q::task_execution_logs().comment({:?}).new_entity(ctx)", comment)); let mut log = Q::task_execution_logs().comment(&comment).new_entity(ctx); teaql_core::Entity::set_comment(&mut log, comment); log.update_action(action.to_owned()) @@ -113,31 +112,21 @@ impl TaskService { /// - `DataSeeded` events are fired for each entity type seeded pub async fn new(db_path: &str) -> Result> { let conn = rusqlite::Connection::open(db_path)?; - let inner_executor = RusqliteMutationExecutor::new(conn); - - - let mut ctx = robot_kanban::module_with_behaviors_and_checkers().into_context(); + + // 使用生成器暴露的集成 API,完全对业务层隐藏底层的环境加载和 Schema 迁移逻辑。 + let mut ctx = robot_kanban::service_runtime_from_pool(conn).await + .map_err(|e| format!("Failed to initialize runtime: {}", e))?; - // Register custom TUI log buffer and audit event sink + // 仅添加业务层特有的 UI 日志收集器 let log_buffer = UnifiedLogBuffer::default(); ctx.insert_resource(log_buffer); ctx.set_event_sink(AppAuditSink); - // Register synchronous executors - ctx.use_rusqlite_provider(inner_executor.clone()); - ctx.set_internal_id_generator(RusqliteIdSpaceGenerator::from_executor(inner_executor.clone())); - - // Also register ServiceRuntimeExecutor for the generated repository lookups - let service_runtime_executor = robot_kanban::ServiceRuntimeExecutor::new(inner_executor.clone()); - ctx.insert_resource(service_runtime_executor); + let inner_executor = ctx.get_resource::().ok_or("Failed to get executor")?.clone(); - // Build Schema & seed initial values if missing. - // This now fires SchemaCreated and DataSeeded events through the EntityEventSink, - // which are captured in the UnifiedLogBuffer for the startup screen to observe. - ensure_rusqlite_schema_for(&ctx)?; let mut status_cache = std::collections::HashMap::new(); - crate::logging::log_info(&ctx, "Execute TeaQL - Q::task_status().comment(\"Load task statuses for cache\").execute_for_list(&ctx)"); + crate::logging::emit_ui_message(&ctx, "Execute TeaQL - Q::task_status().comment(\"Load task statuses for cache\").execute_for_list(&ctx)"); let statuses = robot_kanban::Q::task_status() .comment("Load task statuses for cache") .execute_for_list(&ctx) @@ -207,8 +196,8 @@ impl TaskService { &self.ctx } - pub fn log_info(&self, message: &str) { - crate::logging::log_info(&self.ctx, message); + pub fn emit_ui_message(&self, message: &str) { + crate::logging::emit_ui_message(&self.ctx, message); } pub async fn reload_data( @@ -226,14 +215,14 @@ impl TaskService { .facet_by_status_as("status_stats", robot_kanban::Q::task_status().comment("Count status").count_tasks()); // Unified logging: Log the query trace before running the query - self.log_info(&format!("Starting query: {}", search_comment)); + self.emit_ui_message(&format!("Starting query: {}", search_comment)); let teaql_code = if let Some(kw) = search_term { format!("Q::tasks().comment({:?}).with_name_like(\"%{}%\").facet_by_status_as(\"status_stats\", Q::task_status().comment(\"Count status\").count_tasks())", search_comment, kw) } else { format!("Q::tasks().comment({:?}).facet_by_status_as(\"status_stats\", Q::task_status().comment(\"Count status\").count_tasks())", search_comment) }; - self.log_info(&format!("Execute TeaQL - {}", teaql_code)); + self.emit_ui_message(&format!("Execute TeaQL - {}", teaql_code)); let list_result = query.execute_for_list(&self.ctx).await?; @@ -299,7 +288,7 @@ impl TaskService { } } - self.log_info(&format!("Finished query: {}", search_comment)); + self.emit_ui_message(&format!("Finished query: {}", search_comment)); Ok(ReloadedData { planned_tasks, @@ -314,7 +303,7 @@ impl TaskService { } pub async fn add_task(&self, name: &str) -> Result> { - self.log_info(&format!("Starting business action: Create task '{}'", name)); + self.emit_ui_message(&format!("Starting business action: Create task '{}'", name)); let next_id = self.ctx.next_id_for::()?; let cmd = CreateTaskCommand { name: name.to_owned() }; let mut task = Task::create(&cmd, next_id, &self.ctx)?; @@ -328,13 +317,13 @@ impl TaskService { task.save(&self.ctx).await.map_err(|e| Box::new(e) as Box)?; - self.log_info(&format!("Finished business action: Create task '{}'", name)); + self.emit_ui_message(&format!("Finished business action: Create task '{}'", name)); Ok(next_id) } pub async fn delete_task(&self, id: u64) -> Result> { - self.log_info(&format!("Starting business action: Delete task ID {}", id)); - self.log_info(&format!("Execute TeaQL - Q::tasks().with_id_is({}).comment(\"Load task {} for deletion\").execute_for_one(&self.ctx)", id, id)); + self.emit_ui_message(&format!("Starting business action: Delete task ID {}", id)); + self.emit_ui_message(&format!("Execute TeaQL - Q::tasks().with_id_is({}).comment(\"Load task {} for deletion\").execute_for_one(&self.ctx)", id, id)); let task_opt = robot_kanban::Q::tasks() .with_id_is(id) @@ -349,10 +338,10 @@ impl TaskService { task.mark_as_delete(); task.save(&self.ctx).await.map_err(|e| Box::new(e) as Box)?; - self.log_info(&format!("Finished business action: Delete task ID {}", id)); + self.emit_ui_message(&format!("Finished business action: Delete task ID {}", id)); Ok(true) } else { - self.log_info(&format!("Finished business action: Error: Task with ID {} not found", id)); + self.emit_ui_message(&format!("Finished business action: Error: Task with ID {} not found", id)); Ok(false) } } @@ -364,7 +353,7 @@ impl TaskService { ) -> Result> { let trimmed_status = target_status.trim(); - self.log_info(&format!("Execute TeaQL - Q::tasks().with_id_is({}).comment(\"Load task {} for status transition\").execute_for_one(&self.ctx)", id, id)); + self.emit_ui_message(&format!("Execute TeaQL - Q::tasks().with_id_is({}).comment(\"Load task {} for status transition\").execute_for_one(&self.ctx)", id, id)); let task_opt = robot_kanban::Q::tasks() .with_id_is(id) .comment(&format!("Load task {} for status transition", id)) @@ -391,7 +380,7 @@ impl TaskService { let task_name = task.name().to_string(); - self.log_info(&format!("Starting business action: Move '{}' {} => {}", task_name, old_status_name, status_name)); + self.emit_ui_message(&format!("Starting business action: Move '{}' {} => {}", task_name, old_status_name, status_name)); let detail = format!("Status changed from {} to {}.", old_status_name, status_name); @@ -408,24 +397,24 @@ impl TaskService { // Save the aggregate root, which implicitly saves the child execution logs task.save(&self.ctx).await.map_err(|e| Box::new(e) as Box)?; - self.log_info(&format!("Finished business action: Moved task {} to '{}' (DDD transition)", id, status_name)); + self.emit_ui_message(&format!("Finished business action: Moved task {} to '{}' (DDD transition)", id, status_name)); Ok(MoveResult::Moved { status_name, }) } Ok(None) => { - self.log_info(&format!("Action failed: Task {} already in final status", id)); + self.emit_ui_message(&format!("Action failed: Task {} already in final status", id)); Ok(MoveResult::AlreadyFinal) } Err(e) => { let err_msg = format!("Transition error: {}", e); - self.log_info(&format!("Action failed: {}", err_msg)); + self.emit_ui_message(&format!("Action failed: {}", err_msg)); Ok(MoveResult::Error { err_msg }) } } } else { - self.log_info(&format!("Action failed: Task {} not found", id)); + self.emit_ui_message(&format!("Action failed: Task {} not found", id)); Ok(MoveResult::NotFound) } }