MCPcopy Create free account
hub / github.com/DeusData/codebase-memory-mcp / cli_activation_request_quiescence

Function cli_activation_request_quiescence

src/cli/cli.c:444–466  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

442}
443
444static cbm_version_cohort_quiesce_result_t cli_activation_request_quiescence(void *opaque) {
445 cli_activation_production_context_t *context = opaque;
446 if (!context || !context->endpoint) {
447 return CBM_VERSION_COHORT_QUIESCE_ERROR;
448 }
449
450 /* Never acquire startup while maintenance+admission are held EX. A
451 * bootstrap participant can already hold both its lifetime SH and startup
452 * while it discovers maintenance; waiting here would invert its teardown
453 * order and time out both sides. OP8 is safe to attempt directly. An
454 * absent endpoint or lost ACK is not mutation authority: the finite
455 * lifetime-EX wait below remains the authoritative drain proof. */
456 uint64_t control = cli_activation_deadline_after(CLI_ACTIVATION_CONTROL_TIMEOUT_MS);
457 context->control_deadline_ms = control < context->deadline_ms ? control : context->deadline_ms;
458 cbm_daemon_runtime_activation_result_t result = {0};
459 if (cbm_daemon_runtime_request_activation_shutdown(
460 context->endpoint, &context->identity, context->action,
461 cli_activation_remaining_timeout(context), &result)) {
462 cli_activation_merge_daemon_result(context, &result);
463 }
464 context->shutdown_requested = true;
465 return CBM_VERSION_COHORT_QUIESCE_REQUESTED;
466}
467
468static void cli_activation_release_cleanup_lease(cli_activation_production_context_t *context,
469 cbm_version_cohort_lease_t **lease_io) {

Callers

nothing calls this directly

Tested by

no test coverage detected