generated from coulomb/repo-seed
ISSUE-WP-0003 finished: live REST emission proven (Gitea issue 176), topology corrected
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -4,7 +4,7 @@ type: workplan
|
||||
title: "Deploy issue-core as a service on railiance01 (ArgoCD GitOps pilot)"
|
||||
domain: infotech
|
||||
repo: issue-core
|
||||
status: blocked
|
||||
status: finished
|
||||
owner: claude
|
||||
topic_slug: custodian
|
||||
created: "2026-06-19"
|
||||
@@ -235,7 +235,7 @@ the cluster Gitea (markitect) backend.
|
||||
|
||||
```task
|
||||
id: ISSUE-WP-0003-T06
|
||||
status: wait
|
||||
status: done
|
||||
priority: high
|
||||
state_hub_task_id: "96b14cdb-364f-4eab-a80e-dd8b3859c694"
|
||||
```
|
||||
@@ -262,7 +262,7 @@ state_hub_task_id: "96b14cdb-364f-4eab-a80e-dd8b3859c694"
|
||||
|
||||
```task
|
||||
id: ISSUE-WP-0003-T07
|
||||
status: wait
|
||||
status: done
|
||||
priority: medium
|
||||
state_hub_task_id: "8d853b8e-cfca-441d-b817-0a29e37bd66e"
|
||||
```
|
||||
@@ -271,8 +271,8 @@ state_hub_task_id: "8d853b8e-cfca-441d-b817-0a29e37bd66e"
|
||||
|
||||
- ArgoCD Application Synced/Healthy; issue-core Pod Ready; Service reachable
|
||||
cluster-internal.
|
||||
- [ ] activity-core -> issue-core emission returns 201 and creates a Gitea issue
|
||||
(remaining T06 handoff).
|
||||
- [x] activity-core -> issue-core emission returns 201 and creates a Gitea issue
|
||||
(2026-07-02: Gitea issue `176` via the live sink path — see completion note).
|
||||
- [x] Document the GitOps runbook (image build/push, ArgoCD sync, secret
|
||||
contract, smoke, activity-core handoff) in `docs/argocd-gitops.md`.
|
||||
- Emit an `add_progress_event` milestone to the hub when the activity-core
|
||||
@@ -289,3 +289,39 @@ state_hub_task_id: "8d853b8e-cfca-441d-b817-0a29e37bd66e"
|
||||
- `activity-core/k8s/railiance/README.md` — the imperative pattern being
|
||||
superseded for this service.
|
||||
- `~/ops-warden/wiki/playbooks/activity-core-issue-sink.md` — key routing.
|
||||
|
||||
|
||||
## Completion 2026-07-02 — live emission proven, topology corrected
|
||||
|
||||
**Topology correction:** this workplan's "railiance01 cluster" is actually the
|
||||
CoulombCore k3s cluster (92.205.130.254, reached via the workstation
|
||||
kubeconfig tunnel `127.0.0.1:16443`). The real railiance01 (92.205.62.239)
|
||||
hosts activity-core and has no issue-core namespace. The in-cluster
|
||||
`issue-core.issue-core.svc.cluster.local` URL that T06 originally assumed was
|
||||
therefore never resolvable from activity-core.
|
||||
|
||||
**Cross-machine lane built (2026-07-02):**
|
||||
- ops-bridge gained an optional `remote_host` forward destination
|
||||
(ops-bridge commit) enabling tunnels to k3s ClusterIPs.
|
||||
- Tunnels: `issue-core-coulombcore` (workstation `127.0.0.1:18765` ->
|
||||
CoulombCore ClusterIP `10.43.103.154:8765`, health-checked on `/healthz`)
|
||||
and `issue-core-railiance01` (railiance01 `127.0.0.1:18765` -> workstation).
|
||||
- activity-core commit `a1e2a42`: new `actcore-issue-core-bridge`
|
||||
hostNetwork proxy (host port 18081 -> node-local 18765) cloned from the
|
||||
state-hub-bridge pattern, `ISSUE_CORE_URL` ->
|
||||
`http://actcore-issue-core-bridge.activity-core.svc.cluster.local:8765`,
|
||||
`ISSUE_SINK_TYPE` -> `rest`.
|
||||
- `ISSUE_CORE_API_KEY` merged into railiance01's `actcore-runtime-secret` by
|
||||
the operator via a stdin-only pipe from the approved OpenBao lane
|
||||
(`CCR-2026-0002`, activated the same day).
|
||||
|
||||
**Emission proof:** from inside the restarted actcore-worker, the real
|
||||
`IssueCoreRestSink` emitted a labeled smoke TaskSpec and received
|
||||
`TaskRef(external_id='176', backend='gitea')` — Gitea issue `176` in
|
||||
`coulomb/markitect-main` (default backend). Auth, bridge, tunnels, issue-core
|
||||
validation, and Gitea creation all exercised on the production path.
|
||||
|
||||
**Contract note for emitters:** `POST /issues/` requires `target_repo` and
|
||||
`activity_definition_id` (422 otherwise). activity-core `TaskSpec` defaults
|
||||
(`target_repo=None`, `activity_definition_id=""`) will be rejected — rule and
|
||||
instruction emitters must populate both.
|
||||
|
||||
Reference in New Issue
Block a user