Commit Graph
110 Commits
Author SHA1 Message Date
haelyra 4ce5ae0119 fix: preserve search scope and installed cache discovery 2026-10-11 10:25:44 -04:00
haelyra 6d0b8d4dcb test: bind ledger failure snapshots to file descriptors 2026-10-11 09:57:27 -04:00
haelyra a73e04cc6d fix: recover failed ledger batches and preserve project state 2026-10-11 09:42:05 -04:00
haelyra 8a404dbbdc fix: preserve story projections and blank provider defaults 2026-10-11 08:56:29 -04:00
haelyra 137ec69adc test: verify Windows lock refusal after committed publication 2026-10-11 06:51:30 -04:00
haelyra cc12310b69 test(ledger): classify owned snapshot entries through directory records 2026-10-11 05:48:40 -04:00
haelyra 723e097e92 test(ledger): bind storage-preservation snapshots to descriptors 2026-10-11 05:44:22 -04:00
haelyra 5da9a1f4a7 fix: preflight ledger storage and normalize saved model padding 2026-10-11 05:33:44 -04:00
haelyra ca32c9ab79 test(ledger): normalize the competing-publication fault selector 2026-10-11 05:05:26 -04:00
haelyra 15b51b6ca4 fix(windows): make fault probes portable and bound sharing-denial retries 2026-10-11 04:56:18 -04:00
haelyra 8f80de5975 fix(ledger): retain lock descriptors across ownership checks and release 2026-10-11 04:19:35 -04:00
haelyra afdf403ae9 test: keep stale lock race fixture portable 2026-10-11 03:54:38 -04:00
haelyra 644269657c fix: harden ledger publication and mixed Ollama histories 2026-10-11 03:53:41 -04:00
haelyra 1bbebf61d9 fix(story-lifecycle): reject unsafe numeric allocation IDs
A real CLI fixture reproduced an infinite allocation loop from an existing unsafe numeric ID. Reject unsafe IDs and overflow without writing markers; 26 workflow fixtures, changed-code coverage and validators pass.
2026-10-11 02:17:50 -04:00
haelyra 54925308d7 feat(skills): integrate collision-safe story lifecycle from PR 2311
Preserve full contributor history and current catalog. Actual process workflows cover concurrency, recovery, sprint planning and read-only status. Bound registry symlinks, counts and lock waits; preserve manually curated trigger provenance.
2026-10-11 01:59:36 -04:00
haelyra 4b612a73f3 Merge PR #3462: add Arabic locale while preserving Bengali distribution 2026-10-10 17:38:04 -04:00
taljeri 6d15a1272e docs(i18n): add Arabic localization scout
Add Arabic (ar) localization guide and glossary, register the locale:ar component and docs-ar module across install manifests, and wire test coverage.

Contributed-by: @taljeri (taljeri)
Signed-off-by: taljeri <318237806+taljeri@users.noreply.github.com>
2026-10-08 21:50:04 +03:00
t0kubetsu bf5cd6c95e fix(story-lifecycle): reject Points outside 1, 2, 3, 5, 8
A non-numeric, negative, or exponent Points value was persisted and
silently skewed the derived sprint total (bogus -> 0, -3, 1e3 -> 1000)
with no drift reported. parseStory now enforces the documented values,
so apply rejects the batch and status reports the invalid story.
2026-10-07 12:05:53 +02:00
t0kubetsu 7f797d65c4 fix(story-lifecycle): confine ledger I/O, race-free stale locks, enforce transitions
Resolve the Greptile findings on 74262955:
- Refuse symlinked .stories/, epics/, sprints/, .txn/, .ids/ and
  symlinked ledger files, so no read or write leaves .stories/.
- Recovery accepts only regular backup-<n> files in .txn/, validates the
  whole journal before restoring, and never writes through a planted
  restore.tmp.
- Remove a stale lock only under .lock.break after a re-read, so a live
  lock is never deleted; a leftover .lock.break times out (exit 3)
  instead of spinning.
- apply enforces one-step-forward status transitions, new stories start
  as todo, and Sprint must be unassigned or an existing sprint file.
- Refuse a batch that names the same file twice (e.g. a\b vs a/b).

Symlink tests skip on Windows when symlink creation returns EPERM.
2026-10-07 11:45:30 +02:00
t0kubetsu 7426295579 feat(story-lifecycle): collision-safe, all-or-nothing ledger writes
Route every .stories/ write through skills/story-lifecycle/scripts/ledger.js:
- exclusive per-ledger lock; a second writer waits, then exits 3 without writing
- story IDs reserved with exclusive-create markers in the git common dir, so
  concurrent agents and worktrees of one clone never share an ID
- journaled batches: stage, journal, rename; derived epic/sprint tables are
  regenerated inside the batch; an interrupted batch is rolled back by the
  next write command or `recover`; `status` reports it only when no live
  writer holds the lock

Bound the ledger to an opt-in planning projection that is never canonical
ECC Task/Evidence/Completion/Integration state, and state that .stories/
follows the checkout.

tests/docs/story-lifecycle-ledger.test.js exercises create, concurrent
create, concurrent cross-worktree allocation, lock contention, overwrite
refusal, interrupted-batch recovery, sprint planning, status drift and
reconcile, and path confinement. Also refresh the skill-triggers manifest
digest for 294 skills.
2026-10-02 11:39:04 +02:00
t0kubetsu 0434cd9168 Merge remote-tracking branch 'upstream/main' into feat/story-lifecycle-skill 2026-10-02 11:15:03 +02:00
Eric BellavanceandClaude Opus 5.5 a7f316a219 test(kiro): assert steering inclusion modes match the README
Pin the core steering files to `inclusion: always`, check every steering
file's frontmatter against the .kiro/README.md table, and require the
fields each inclusion mode needs.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-01 15:09:33 -04:00
haelyra 2ae86b4fcf test(github-ops): report locale policy failures 2026-09-10 15:40:13 -04:00
haelyra 678c6dea19 fix(github-ops): synchronize localized merge authority 2026-09-10 15:26:56 -04:00
haelyra adb39a13c9 test: make release safety fixtures CodeQL-clean
Use literal matching for the forbidden documentation endpoint, pin lifecycle mode/content assertions to one descriptor, and inject parent races through the staged descriptor without forwarding arbitrary file-creation flags.
2026-09-07 16:51:51 -04:00
c11753d0b9 fix(skills): replace invented autonomous harness setup instructions
Resolve #2957 using the verified MCP reference memory package, native session scheduling, supported CLI invocation and documented computer-use integration. Incorporates the corrective direction from #2977 and #2958, including package-version pinning and regression checks for executable examples.

Co-authored-by: ilkmajans-cpu <ilkmajans-cpu@users.noreply.github.com>

Co-authored-by: kavish-19 <63698788+kavish-19@users.noreply.github.com>
2026-09-07 16:41:45 -04:00
haelyraandGitHub 005eff40fd fix(install): harden universal setup release path (#2888)
* fix(install): harden universal setup release path

* docs(adal): use ecc-universal doctor command
2026-08-30 18:54:00 -04:00
haelyra 204cc2d2a3 fix(release): stage ECC 2.2 launch safely 2026-08-25 17:19:45 -04:00
haelyra ba838cdc83 test(antigravity): preserve source fallback 2026-08-15 15:30:24 -04:00
haelyra 4e2102fcf4 docs(antigravity): clarify npm 2.2 release boundary 2026-08-15 15:07:31 -04:00
haelyra 21accf1726 docs(antigravity): clarify project-root installation 2026-08-15 13:16:41 -04:00
t0kubetsu d3edf2e644 Merge remote-tracking branch 'upstream/main' into feat/story-lifecycle-skill
# Conflicts:
#	.claude-plugin/marketplace.json
#	.claude-plugin/plugin.json
#	AGENTS.md
#	README.md
#	README.zh-CN.md
#	docs/tr/AGENTS.md
#	docs/zh-CN/AGENTS.md
#	docs/zh-CN/README.md
2026-08-12 08:33:45 +02:00
e990c0c7ed feat(skills): add dev-team skill — multi-persona collaborative session (#2309)
* feat(skills): add dev-team skill — multi-persona collaborative session

Adds skills/dev-team/SKILL.md, a community skill inspired by the
BMAD Method's "party mode": PM, Architect, Developer, and QA respond
to the same topic in parallel, then a synthesis step names tensions
explicitly instead of averaging them.

Reads PROJECT-CONTEXT.md from the repo root when present, and offers
to generate it when missing, folding in the closed project-context
skill's (#2310) generation workflow per affaan-m's review — that
skill's premise (every agent reads the file) wasn't implemented
anywhere, so the capability now lives directly in the one skill that
actually reads it.

Rebuilt on current upstream/main as a skill-only diff: the shared
format-code.ts Windows fix and github-coordination branch-coverage
tests that were previously bundled here (and duplicated across the
story-lifecycle and project-context sibling PRs) now live in #2459.

* fix(manifests): register dev-team skill in workflow-quality install module

* fix(docs): repair README lint errors and Windows hook-install path regression

Fixes CI inherited from the README 2.1 restructure (19b05476):
- MD058: blank lines around tables (delegation map, Codex role configs)
- MD001: Option A/B headings under Ecosystem Tools h2 jump to h4
- MD024: duplicate 'What's included' headings (Codex, Copilot sections)
- restore %USERPROFILE%\\.claude escaping required by
  tests/scripts/manual-hook-install-docs.test.js

* feat(skills): address review — trust boundary, harness-neutral I/O, contract test

Address maintainer review on #2309:
- untrusted-context boundary now travels with every persona prompt:
  inline label on the context section, personas marked analysis-only
  with no state-changing tool use
- personas receive a bounded declarative summary (≤150 words, fixed
  fields, secrets and imperative content stripped) — never the raw
  PROJECT-CONTEXT.md
- context loading uses harness-native file tools; POSIX-only
  'test -f && cat' removed
- all references resolve on main: story-lifecycle follow-up replaced
  with /plan and epic-* commands, ecc:plan-prd corrected to the
  /plan-prd command; boundary vs team-builder and council made explicit
- added tests/docs/dev-team-skill.test.js contract test (roles,
  parallel dispatch, synthesis guardrails, trust boundary, registration)

* docs: refresh Turkish skill count

* ci: retrigger checks (flaky stop-hooks-stdout timeout on macos node20 npm cell)

---------

Co-authored-by: haelyra <49814733+haelyra@users.noreply.github.com>
2026-08-11 12:17:03 -04:00
haelyra 700911ef70 Merge main and harden story lifecycle reconciliation 2026-08-10 17:22:09 -04:00
28e53a0bc1 feat(install): add guided multi-harness installer (#2649)
* feat(install): add guided Claude plugin setup

* fix: support Claude command shims on Windows

* feat: support safe Claude plugin scope migration

* fix(install): preserve interactive setup terminal

* fix(install): auto-migrate setup scope changes

* feat(install): add guided multi-harness installer

* fix(install): sync Yarn binary metadata

* fix(install): handle wizard EOF on Node 18

* ci: allow installer matrix tests to finish

* test(install): allow slower PowerShell delegation

* fix(install): harden guided provider reconciliation

* test(install): harden packaged and local compatibility

* chore: prepare guided installer release 2.2.0

* fix(install): report refreshed Codex marketplace state

* fix(install): verify managed content provenance

* test(install): allow empty Yarn smoke fixture

* test(install): invoke Windows package shims safely

* fix(install): close cross-platform release gaps

* fix(install): require trusted GitHub origins

* fix(install): preserve hook profile precedence

* refactor(install): centralize trusted GitHub origins

* ci: retrigger workflow run after merge of main

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-08-06 15:39:49 -04:00
t0kubetsu e9242b625a feat(skills): address review — canonical state model, hardening, contract test
Address maintainer review on #2311:
- story file is the single authoritative status record; epic/sprint
  tables are derived and reconciled; todo → in-progress → review → done
  with done gated on confirmed merge to main
- implement lane: tdd-workflow first, language reviewer +
  verification-loop before a story reaches review
- naming/path contract (slug, story-id, sprint validation), resolved-path
  confinement under .stories/, untrusted-content handling, no silent
  overwrites, harness-native file operations (no POSIX-only shell)
- documented boundary and handoff to issue-backed epic-* coordination
- replaced references that do not resolve on main; added
  tests/docs/story-lifecycle-skill.test.js contract test
2026-08-03 14:49:34 +02:00
a3130f9ebf feat(codex): add ECC navigation guide (#2525)
* feat(codex): add ECC navigation guide

* fix(codex): ship navigation guide references

---------

Co-authored-by: Haley Chen <2022hachen@gmail.com>
2026-07-22 20:44:37 -04:00
ECC Test 29edd57708 release: 2.0.0 — the agent harness operating system
Graduate 2.0.0-rc.1 to stable. Bump version across package, plugin,
marketplace, OpenCode, agent metadata, VERSION, and all localized docs.
Add 2.0.0 release notes + README sections (en/zh/pt-BR/tr), CHANGELOG
entry, and the ECC community Discord bot (dependency-free gateway client
+ guild command registrar). Update copilot-support and release-surface
tests for the sponsored-review migration and the 2.0.0 surface.
2026-06-09 21:40:40 -04:00
680cc7153b docs(claude): install manual skills at top level (#2160)
* docs(claude): install manual skills at top level

* test(docs): guard Claude manual skill install path

* test(docs): detect PowerShell/$HOME nested skill-install paths

Address CodeRabbit on #2160: the nested-path regression guard only matched
Unix `mkdir`/`cp` with `~`, so a reintroduced PowerShell `Copy-Item ...
$HOME/.claude/skills/ecc` (or backslash-separated) form would have slipped
through. Extend the pattern to also cover `Copy-Item`/`New-Item` (and the
`md`/`copy`/`cpi` aliases), accept `$HOME` as an alternative to `~`, allow both
`/` and `\` separators, and match case-insensitively.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 13:26:06 +08:00
Affaan MustafaandGitHub 99baa82500 docs: define ECC platform value loop (#2119) 2026-06-02 19:51:02 +08:00
Affaan MustafaandAffaan Mustafa 1e8c7e7994 docs: sync live native payments gate evidence 2026-05-19 23:25:38 -04:00
Affaan MustafaandGitHub 6e25458dbc Sync billing gate env-file evidence (#2021) 2026-05-19 22:43:19 -04:00
Affaan MustafaandGitHub c2471fe5c5 docs: sync selected-target announcement gate (#2020) 2026-05-19 22:09:45 -04:00
Affaan MustafaandAffaan Mustafa b3c015c744 docs: sync late May 19 release roadmap state 2026-05-19 19:02:43 -04:00
Affaan MustafaandAffaan Mustafa 9819626459 Add release approval gate 2026-05-19 18:18:54 -04:00
Affaan MustafaandAffaan Mustafa 8bf4de56b2 docs(release): refresh hypergrowth evidence 2026-05-19 13:17:23 -04:00
Affaan MustafaandAffaan Mustafa 27e4036075 Fix release supply-chain evidence gate 2026-05-19 11:59:42 -04:00
Affaan MustafaandAffaan Mustafa ac7434ea8f docs: sync may 19 linear readiness evidence 2026-05-19 11:06:56 -04:00
Affaan MustafaandAffaan Mustafa c7d662c3c6 Track owner approval packet in dashboard 2026-05-19 10:40:31 -04:00
Affaan MustafaandGitHub 8148340ad1 chore: add release owner approval packet (#2001) 2026-05-19 10:18:22 -04:00