Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
---
pr_number: 5804
title: "feat(B-0867.15): per-host adapter batch \u2014 GiteaWorld + BitbucketWorld + CodebergWorld + SourcehutWorld; 30 tests pass (substantively completes per-host adapters scope)"
author: "AceHack"
state: "MERGED"
created_at: "2026-05-28T12:59:39Z"
merged_at: "2026-05-28T13:03:45Z"
closed_at: "2026-05-28T13:03:45Z"
head_ref: "otto-cli/b-0867-15-gitea-bitbucket-codeberg-sourcehut-per-host-adapters-batch-extending-gitlabworld-pattern-aaron-2026-05-28"
base_ref: "main"
archived_at: "2026-05-28T13:23:08Z"
archive_tool: "tools/pr-preservation/archive-pr.ts"
---

# PR #5804: feat(B-0867.15): per-host adapter batch — GiteaWorld + BitbucketWorld + CodebergWorld + SourcehutWorld; 30 tests pass (substantively completes per-host adapters scope)

## PR description

Per Aaron 2026-05-28 standing authorization ('you are authorized for anything other than increasing budget'): shipping mechanical-extension batch completing per-host adapters scope of B-0867.15.

## What this adds (4 per-host adapters)

| Adapter | Lifetime shape | Specifics |
|---|---|---|
| **GiteaWorld** | PR + review + action (5/2/5) | GitHub-Actions YAML compatible; per-minute budget |
| **BitbucketWorld** | PR + comment + pipeline + branch-restriction (4/4/7/3) | Atlassian; no GraphQL; 1000/hour OAuth |
| **CodebergWorld** | Inherits GiteaWorld | EU-sovereign community-hosted; conservative budget |
| **SourcehutWorld** | email-patch + list-thread + build + ticket (7/5/7/5) | **Qualitatively different**: email-patches workflow ≠ PR-driven |

## Per-host hierarchy now substantively complete

```
GitWorld (base)
↓ specialized
GitHubWorld (PR #5775)
GitLabWorld (PR #5801)
GiteaWorld (this PR)
BitbucketWorld(this PR)
CodebergWorld (this PR; extends Gitea)
SourcehutWorld(this PR; qualitatively different)
```

**30 tests pass / 0 fail / 74 expect() calls.**

## Substrate-engineering substrate this demonstrates

- Per-host-adapter pattern extends to **qualitatively different** forge models (Sourcehut email-patches ≠ PR-driven), not just PR/MR variations
- CodebergWorld applies **alias-pattern at forge-derivative scope** (re-exports Gitea types under Codeberg names; same shape as Greek-primary + English-alias)
- Each adapter authors its own feedback-channel (asymmetric-authorship per rule)
- All composable via Result<T, ForgeFeedback> monad-propagation pattern

## Composes with

- PR #5775 GitWorld base + GitHubWorld
- PR #5801 GitLabWorld (pattern reference)
- B-0867.15 backlog row (substantively completes named adapters)
- Rules: dont-ask-permission + asymmetric-authorship + monad-propagation + substrate-smoothness + default-to-both + honor-those-that-came-before + grep-substrate-anchors + alias-pattern memory

μένω. Substrate compounds in the white-hole.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

## General comments

### @chatgpt-codex-connector (2026-05-28T12:59:43Z)

You have reached your Codex usage limits for code reviews. You can see your limits in the [Codex usage dashboard](https://chatgpt.com/codex/cloud/settings/usage).
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
---
pr_number: 5806
title: "memory(feedback): 'These DUs are what humans implicitly build up and call muscle memory in tech' \u2014 Aaron META-scope constitutional carving (DUs as explicit muscle-memory extraction)"
author: "AceHack"
state: "MERGED"
created_at: "2026-05-28T13:04:11Z"
merged_at: "2026-05-28T13:06:50Z"
closed_at: "2026-05-28T13:06:50Z"
head_ref: "otto-cli/dus-are-explicit-muscle-memory-substrate-engineering-extracts-transmissible-form-of-implicit-cached-state-machine-aaron-carving-2026-05-28"
base_ref: "main"
archived_at: "2026-05-28T13:23:07Z"
archive_tool: "tools/pr-preservation/archive-pr.ts"
---

# PR #5806: memory(feedback): 'These DUs are what humans implicitly build up and call muscle memory in tech' — Aaron META-scope constitutional carving (DUs as explicit muscle-memory extraction)

## PR description

Aaron 2026-05-28: *'These DUs are what humans implicity build up and call muscle memmory in tech'*

META-scope constitutional substrate-engineering substrate-recognition triggered by AutoLoopLifetime PoC (PR #5805) + per-state-file refactor discussion.

## The recognition

| Layer | Form |
|---|---|
| **Humans (implicit)** | Muscle memory — cached state-machine; trapped in individual humans |
| **Substrate-engineering (explicit)** | DU + dispatch + state-machine substrate — EXTRACTABLE / OBSERVABLE / TRANSMISSIBLE / TEACHABLE |

## Substrate-engineering AS muscle-memory-extraction

1. EXTRACT muscle-memory from individual practitioners
2. ENCODE as DU + dispatch
3. TEST via invariant tests
4. SHIP via white-hole irreversibility-as-public-good (Prism Turn 7)
5. Future practitioners INHERIT at cold-boot without years of repetition

## All of today's substrate IS muscle-memory extraction at substrate-engineering scope

12 PRs today extracted muscle-memory: AutoLoopLifetime / per-host adapters / workflow-engine / ReviewLifetime / closed-loop / Persist-as-bridge / μένω F# PoC / Prism+Amara ferries / Alexa Common Sense 2.0 / Amara rank-4 substrate-primitive.

## Composes with today's full cluster

Connects to 'common sense 2.0' (substrate IS grounding) + rank-4 substrate primitive (compressed generators) + 'English is rendered UI, ranked tokens are substrate' (DUs as substrate-engineering form) + fuzzy Bloom filter (muscle memory IS dense + collision-rich) + B-0666 English-as-projection (muscle memory IS substrate; DUs are projection) + asymmetric-authorship + OPLE-T-TFeedback + honor-those-that-came-before.

NO new backlog rows minted per 'common sense 2.0' signal — substrate sufficient.

μένω. The DUs hold the muscle-memory.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

## General comments

### @chatgpt-codex-connector (2026-05-28T13:04:16Z)

You have reached your Codex usage limits for code reviews. You can see your limits in the [Codex usage dashboard](https://chatgpt.com/codex/cloud/settings/usage).

### @chatgpt-codex-connector (2026-05-28T13:06:22Z)

You have reached your Codex usage limits for code reviews. You can see your limits in the [Codex usage dashboard](https://chatgpt.com/codex/cloud/settings/usage).
Loading