Implement single-owner DiscordLink preview parity with rich Eco embeds #144
Labels
No labels
burndown-2026-06
headless
autonomy
async-consult
autonomy
epic
autonomy
headless
autonomy
live-collab
c#
priority
P0
priority
P1
priority
P2
priority
P3
priority
P4
role/ai
role/creator
role/design
role/director
role/engineer
role/exec
role/human
role/ops
role/qa
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
coilyco-gaming/eco-app#144
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Direction
Implement the DiscordLink preview replacement as one cohesive workstream. Do not split commands, embed types, or the parity inventory across sibling implementation runs.
The authoritative design is #143 and
docs/discord-bot.md. This is an implementation child of the DiscordLink retirement epic #37.Scope
/eco status,/eco world,/eco economy,/eco player <name>, and/eco help./preview*.jsondata planes. Add a missing public-safe data plane only when parity requires it. Do not call the game server around eco-app.coilyco-bridge/deploywith a separate one-replica Discord worker Deployment and ExternalSecret wiring. Keep tokens and opaque identifiers in SSM only.coilyco-gaming/eco-opsonly after equivalent rich commands exist, leaving chat sync enabled.docs/FEATURES.mdand operator documentation in every affected repo.Safety and rollout
Register commands in a test guild first. Do not globally register commands or disable a DiscordLink surface until live parity is verified. The implementation may leave those final externally visible actions as an explicit director or ops checkpoint, as required by #143.
Do not implement ordinary-message parsing, automatic URL unfurls, mutations, moderation, direct messages, scheduled posts, trade-watch notifications, sharding, or multiple guild configurations.
Tests and acceptance
ward exec test,ward exec lint,ward exec smoke, andward exec precommitpass in eco-app.WARDED_WORKFLOW: done ✅
details
review summary: implemented and landed; in-container review gate intentionally skipped because the temporary ward default is pending brokered QA.
workflow: merge-remote-main; review summary: gate skipped per temporary ward default, validation and commit hooks completed where available.
Felt: cohesive and bounded; the shared embed contract kept the command paths simple.
Confidence: high for implementation and manifest wiring; live Discord behavior remains unverified by design.
Surprises: both remote mains advanced during landing, so each branch was rebased and freshly verified after push; the deploy render gate lacks envsubst, and eco-app precommit-all is blocked by an unrelated existing Ruff naming error.
Follow-ups: operator registers in the test guild and verifies live parity; do not globally register or disable DiscordLink. The active work-party display still needs an approved public-safe eco-app data plane; chat sync remains enabled.
WARDED_WORKFLOW: blocked 🛑
salvage details
An ephemeral
ward container(codex mode) dispatched for this issue finished but its work was not merged tomain, so cleanup preserved it on a branch before teardown and reopened the issue (a closing reference for #144 never reachedmain). Recover from the salvage branch below.coilyco-gaming/eco-appward-salvage/eco-app-b8207ef3Cleanup diagnostics
Recover
— Codex, via
ward agentWARDED_WORKFLOW: reopened
grant details
This run held
--repogrants and closed againstcoilyco-gaming/eco-app, but cleanup could not confirm every granted repo's work reached itsmain. A secondary push can be silently rejected (a non-fast-forward on a busymain, a dead/rotated PAT) while the primary push succeeds, so the issue is reopened rather than left reading "done" with the cross-repo half lost.coilyco-gaming/eco-opsorigin/main.ward-salvage/eco-ops-7227a5b2Re-run the cross-repo half, or - per ward#291 - file it as a native issue in the granted repo so it becomes a single-repo run that sidesteps this failure mode.
— Codex, via
ward agentWARDED_WORKFLOW: reservation-released
release details
Run finished with
WARDED_WORKFLOW: blocked 🛑.ward container reapreleased containerengineer-codex-eco-app-144(--harness codex): the terminal outcome supersedes the reservation, so a later redispatch no longer needs--override-reservation.— Codex, via
ward agentLive operator checkpoint, 2026-07-23: build-publish run 10007 (#113) is green on
9daa7d0; deploy validation run 10012 and Eco rollout run 10013 are green on deploy main 26d57ea. The app is live on9daa7d0and the new detailedTrades/rollupRows/rollupTrades data is present. The three Discord SSM parameters were absent; they were seeded from the authenticated live DiscordLink bot/config without exposing values, the ExternalSecret now reports SecretSynced/Ready, and the worker is 1/1 Available with a connected Discord gateway.eco-discord-registerwas run test-guild-only and the REST readback confirms exactly /eco {status, world, economy, player, help}. No global registration occurred and DiscordLink remains unchanged. Final parity is not yet green: a live worker probe found /preview/currency.json returning 500 because its payload contains inf, which breaks /eco economy. Captured and dispatched as eco-app#147. The already-documented work-party public-safe data-plane checkpoint also remains.WARDED_WORKFLOW: blocked 🛑
details
human comment by @coilyco-ops at 2026-07-23T05:07:18Z is newer than the latest ward acknowledgement at 2026-07-23T04:21:46Z
This action is blocked until the feedback is visibly acknowledged.
— Codex, via
ward agentAcknowledged the live operator checkpoint and the remaining parity blockers. PR #145 is only a false-salvage duplicate whose head is already on main; closing that PR does not close this issue or waive the currency/work-party/live-verification checkpoints.
WARDED_WORKFLOW: blocked 🛑
details
human comment by @coilyco-ops at 2026-07-23T05:24:24Z is newer than the latest ward acknowledgement at 2026-07-23T05:24:12Z
This action is blocked until the feedback is visibly acknowledged.
— Codex, via
ward agentCurrent checkpoint after the earlier ward acknowledgement loop:
1/1Available on current eco-appmain./eco economyblocker is gone./eco rich {status, world, economy, player, help}scoped to#eco-app, so the operator must re-run test-guild registration and verify that exact schema before any global action.The next code step is blocked only on the public-safe work-party contract. The next live step is the updated test-guild registration and five-command verification.