Skip to content

fix(runtime): recognize Compose completion gates#65

Merged
roodboi merged 6 commits into
mainfrom
fix/compose-completion-gates
Jul 10, 2026
Merged

fix(runtime): recognize Compose completion gates#65
roodboi merged 6 commits into
mainfrom
fix/compose-completion-gates

Conversation

@roodboi

@roodboi roodboi commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

Summary

  • infer successful one-shot services from Compose depends_on.condition: service_completed_successfully
  • preserve strict failure handling for unrelated services that merely exit zero
  • refresh lifecycle docs and agent-integration revision so stale installed guidance is detectable

Root cause

Hack v3.3.6 only accepted exited-zero services when they were dependency installers or carried hack.service.one-shot=true. Valid Compose completion gates such as Event Agent db-ops were therefore reported as E_STARTUP_INCOMPLETE after the stack had started successfully.

Verification

  • bun test — 893 pass, 5 skip, 0 fail
  • bun run check
  • bun run typecheck
  • bun run build
  • focused startup/classifier regressions — 16 pass, 0 fail

@blacksmith-sh

This comment has been minimized.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: d61b36d733

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/lib/registry-credential-preflight.ts Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 95990d182c

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/lib/registry-credential-preflight.ts Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 6a1c107dad

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/lib/registry-credential-preflight.ts Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ad10c6b038

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/commands/project.ts Outdated
Comment thread src/agents/integration-revision.ts
@roodboi roodboi merged commit e85e223 into main Jul 10, 2026
5 checks passed
@roodboi roodboi deleted the fix/compose-completion-gates branch July 10, 2026 04:33
roodboi pushed a commit that referenced this pull request Jul 10, 2026
## <small>3.3.7 (2026-07-10)</small>

* fix(runtime): recognize Compose completion gates (#65) ([e85e223](e85e223)), closes [#65](#65)
roodboi added a commit that referenced this pull request Jul 10, 2026
## Summary

- inject versioned, non-secret runtime host metadata into every Compose
service
- expose branch-qualified public route maps plus current-service
convenience fields
- make `up`, `restart`, targeted restart, `run`, and `exec` inspection
consume consistent generated Compose overrides
- extract and directly test branch-host rewriting
- document Compose-DNS vs public-URL usage and bump agent-integration
freshness

## Runtime contract

Containers receive `HACK_RUNTIME_METADATA`, `HACK_DEV_URL`,
`HACK_ALIAS_URL`, `HACK_SERVICE_NAME`, `HACK_SERVICE_URL`, and
`HACK_SERVICE_URLS`. The versioned JSON document includes all routable
services, avoiding lossy service-name-to-env-key conversion. Explicit
project env values retain precedence for backward compatibility.

## Verification

- `bun test` — 897 pass, 5 skip, 0 fail
- focused metadata/branch/run/exec/agent tests — 27 pass, 0 fail
- `bun run check`
- `bun run typecheck`
- `bun run build`
- Docker E2E `worktree-parallel-up` — primary and branch containers
expose distinct URLs; metadata survives restart

## Release decision

This is a user-facing runtime capability and should produce a
feature/minor release signal. The Conventional Commit title
intentionally uses `feat(runtime)`.

## Landing order

PR #65 should land first; then this branch should be updated from `main`
before merge so its `project.ts` changes include the completion-gate
fixes.
roodboi pushed a commit that referenced this pull request Jul 10, 2026
## 3.4.0 (2026-07-10)

* feat(runtime): expose branch-safe host metadata (#66) ([0b0ec61](0b0ec61)), closes [#66](#66) [#65](#65)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant