Skip to content

Commit 153dbff

Browse files
chore: scheduled maintenance — goal-init release, loop-context 1.4.0 (#339)
goal-init release path, loop-context 1.4.0, STATE.md.
1 parent 9b90b48 commit 153dbff

4 files changed

Lines changed: 88 additions & 22 deletions

File tree

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
name: Release goal-init
2+
3+
on:
4+
push:
5+
tags:
6+
- 'goal-init-v*'
7+
workflow_dispatch:
8+
inputs:
9+
tag:
10+
description: 'Tag to publish (e.g. goal-init-v1.0.0)'
11+
required: true
12+
type: string
13+
14+
permissions:
15+
contents: read
16+
id-token: write
17+
18+
jobs:
19+
test-and-publish:
20+
runs-on: ubuntu-latest
21+
steps:
22+
- uses: actions/checkout@v7
23+
with:
24+
ref: ${{ github.event_name == 'workflow_dispatch' && format('refs/tags/{0}', github.event.inputs.tag) || github.ref }}
25+
26+
- uses: actions/setup-node@v7
27+
with:
28+
node-version: '22'
29+
registry-url: 'https://registry.npmjs.org'
30+
cache: 'npm'
31+
cache-dependency-path: tools/goal-init/package-lock.json
32+
33+
- name: Ensure npm supports trusted publishing (OIDC)
34+
run: npm install -g npm@latest
35+
36+
- name: Install, build, test
37+
working-directory: tools/goal-init
38+
run: |
39+
npm ci
40+
npm run build
41+
npm test
42+
43+
- name: Skip if version already published
44+
id: check
45+
working-directory: tools/goal-init
46+
run: |
47+
VERSION=$(node -p "require('./package.json').version")
48+
if npm view "@cobusgreyling/goal-init@${VERSION}" version 2>/dev/null; then
49+
echo "Version ${VERSION} already on npm — skipping publish."
50+
echo "skip=true" >> "$GITHUB_OUTPUT"
51+
else
52+
echo "Publishing @cobusgreyling/goal-init@${VERSION}"
53+
echo "skip=false" >> "$GITHUB_OUTPUT"
54+
fi
55+
env:
56+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
57+
58+
- name: Publish to npm
59+
if: steps.check.outputs.skip != 'true'
60+
working-directory: tools/goal-init
61+
run: npm publish --access public --provenance
62+
env:
63+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

STATE.md

Lines changed: 16 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,12 @@
11
# Loop State — loop-engineering reference
22

3-
Last run: 2026-07-21T14:11:50Z (PR triage / scheduled maintenance)
3+
Last run: 2026-07-21T20:30:00Z (scheduled maintenance)
44

55
## High Priority (loop is acting or waiting on human)
66

7-
- Maintain loop readiness score ≥ 58 (current: **100**, level **L3**). Harness-runtime warn: no `.foundry/stack.yaml` — optional dogfood `loop-init --with-foundry` (human).
8-
- **Shipped (recent):** [#324](https://github.com/cobusgreyling/loop-engineering/pull/324) Foundry funnel + [v1.6.0](https://github.com/cobusgreyling/loop-engineering/releases/tag/v1.6.0); ecosystem/docs/star-history automation; **triage 2026-07-21:**
9-
- Merged [#335](https://github.com/cobusgreyling/loop-engineering/pull/335) loop-context circuit breaker wiring (@Tusm11)
10-
- Merged [#318](https://github.com/cobusgreyling/loop-engineering/pull/318) live telemetry on docs site (@THRISHAL12345)
11-
- Merged [#316](https://github.com/cobusgreyling/loop-engineering/pull/316) loop-sync requiredFiles (+ dropped accidental `pr-description.md`)
12-
- Closed [#315](https://github.com/cobusgreyling/loop-engineering/pull/315) superseded housekeeping draft
13-
- **Waiting on author (changes requested):**
14-
- [#317](https://github.com/cobusgreyling/loop-engineering/pull/317) goal-init — strip `.test-manual/`, `scratch.js`, `PR_DESCRIPTION.md`, unrelated `dist/`
15-
- [#321](https://github.com/cobusgreyling/loop-engineering/pull/321) readiness-core — rebase (conflicts), strip noise dist, add tests, clarify private vs publish
16-
- Issues: [#332](https://github.com/cobusgreyling/loop-engineering/issues/332) release prep · [#320](https://github.com/cobusgreyling/loop-engineering/issues/320) weekly report
7+
- Maintain loop readiness score ≥ 58 (current: **100**, level **L3**).
8+
- npm publish in flight this run: `readiness-core` 1.0.0, `goal-init` 1.0.0, `loop-context` 1.4.0 (tags after merge).
9+
- [#332](https://github.com/cobusgreyling/loop-engineering/issues/332) release prep — week of 2026-07-20 (human changelog/discussion).
1710

1811
## Watch List
1912

@@ -22,20 +15,24 @@ Last run: 2026-07-21T14:11:50Z (PR triage / scheduled maintenance)
2215
- Validate `loop-init --with-foundry` on fresh projects
2316
- Optional: StackMap #300, Pluribus #262, loop.js #246
2417

25-
## Housekeeping (2026-07-21 triage)
18+
## Housekeeping (2026-07-21 scheduled maintenance)
2619

27-
- Human PR triage completed (merge 316/318/335; close 315; CHANGES_REQUESTED 317/321).
28-
- Main CI green; readiness 100/L3; npm current as of last release prep.
20+
- Merged [#338](https://github.com/cobusgreyling/loop-engineering/pull/338) (loop-init lockfile → loop-audit 1.7.0).
21+
- Merged [#337](https://github.com/cobusgreyling/loop-engineering/pull/337) (loop-context frustration circuit breaker) — bumped to 1.4.0.
22+
- Added `release-goal-init.yml` + RELEASE.md docs; first publish for `goal-init` + `readiness-core`.
23+
- Closed draft [#336](https://github.com/cobusgreyling/loop-engineering/pull/336) as superseded.
24+
- Closed weekly loop report [#320](https://github.com/cobusgreyling/loop-engineering/issues/320) after review.
25+
- No open PRs after this run; CI green on `main`.
2926

3027
## Recent Noise
3128

32-
- Star-history / sparse automated STATE overwrite (expected).
33-
- Automated daily-triage can clobber curated High Priority — re-curate after merge.
29+
- Star-history / dependabot automation (routine).
30+
- StackMap #300 marketing.
3431

3532
## Post-Run Critique
3633

37-
- Friction: automated daily-triage still overwrites curated STATE.
38-
- Adjustment: land curated maintenance after triage; consider workflow preserve-section later.
34+
- Friction: `goal-init` landed without a release workflow; caught on maintenance.
35+
- Adjustment: require release workflow + RELEASE.md row in the same PR as any new `tools/*` package.
3936

4037
---
41-
Run log: Updated by daily-triage.yml and scheduled maintenance. See LOOP.md.
38+
Run log: Updated by `.github/workflows/daily-triage.yml`. See `LOOP.md` for cadence and gates.

docs/RELEASE.md

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Release playbook — npm packages
22

3-
This repo ships ten public npm packages from `tools/`:
3+
This repo ships eleven public npm packages from `tools/`:
44

55
| Package | Directory | Release tag |
66
|---------|-----------|-------------|
@@ -14,6 +14,7 @@ This repo ships ten public npm packages from `tools/`:
1414
| `@cobusgreyling/loop-worktree` | `tools/loop-worktree` | `loop-worktree-v*` |
1515
| `@cobusgreyling/loop-gate` | `tools/loop-gate` | `loop-gate-v*` |
1616
| `@cobusgreyling/goal-audit` | `tools/goal-audit` | `goal-audit-v*` |
17+
| `@cobusgreyling/goal-init` | `tools/goal-init` | `goal-init-v*` |
1718

1819
## One-time setup (trusted publishing — recommended)
1920

@@ -31,6 +32,7 @@ Link npm to GitHub, then for **each package** on [npmjs.com](https://www.npmjs.c
3132
| `@cobusgreyling/loop-worktree` | `cobusgreyling/loop-engineering` | `release-loop-worktree.yml` |
3233
| `@cobusgreyling/loop-gate` | `cobusgreyling/loop-engineering` | `release-loop-gate.yml` |
3334
| `@cobusgreyling/goal-audit` | `cobusgreyling/loop-engineering` | `release-goal-audit.yml` |
35+
| `@cobusgreyling/goal-init` | `cobusgreyling/loop-engineering` | `release-goal-init.yml` |
3436

3537
Names must match **exactly** (case-sensitive). No `NPM_TOKEN` secret is required when trusted publishing is configured.
3638

@@ -88,9 +90,13 @@ git push origin loop-gate-v1.0.0
8890
# goal-audit (Goal Engineering readiness scorer — companion repo)
8991
git tag goal-audit-v1.0.2
9092
git push origin goal-audit-v1.0.2
93+
94+
# goal-init (scaffold goal engineering setups)
95+
git tag goal-init-v1.0.0
96+
git push origin goal-init-v1.0.0
9197
```
9298

93-
Workflows: `.github/workflows/release-readiness-core.yml`, `.github/workflows/release-loop-audit.yml`, `.github/workflows/release-loop-init.yml`, `.github/workflows/release-loop-cost.yml`, `.github/workflows/release-loop-sync.yml`, `.github/workflows/release-loop-context.yml`, `.github/workflows/release-loop-mcp-server.yml`, `.github/workflows/release-loop-worktree.yml`, `.github/workflows/release-loop-gate.yml`, `.github/workflows/release-goal-audit.yml`.
99+
Workflows: `.github/workflows/release-readiness-core.yml`, `.github/workflows/release-loop-audit.yml`, `.github/workflows/release-loop-init.yml`, `.github/workflows/release-loop-cost.yml`, `.github/workflows/release-loop-sync.yml`, `.github/workflows/release-loop-context.yml`, `.github/workflows/release-loop-mcp-server.yml`, `.github/workflows/release-loop-worktree.yml`, `.github/workflows/release-loop-gate.yml`, `.github/workflows/release-goal-audit.yml`, `.github/workflows/release-goal-init.yml`.
94100

95101
## Verify after publish
96102

tools/loop-context/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@cobusgreyling/loop-context",
3-
"version": "1.3.0",
3+
"version": "1.4.0",
44
"description": "Stateful memory manager for agent loops — summarize, prune, and inject context, with a circuit breaker that escalates stagnant or no-progress runs instead of burning tokens.",
55
"type": "module",
66
"main": "dist/context-manager.js",

0 commit comments

Comments
 (0)