Commit Graph

8 Commits

Author SHA1 Message Date
Jose Montes de Oca 2c338823f3 feat: de-brand the run-phase model and release skill 0.16.0 (#167)
With the Reactor harness in its own repository, the language describes
its run-phase model for what it is rather than after one implementation
of it.

- concepts/reactor.md → concepts/reconciler.md; spec/02 keeps only the
  contract any conforming harness must satisfy (02-Harness.md) and
  spec/03 becomes 03-AuthoringPattern.md. "Reactor" in the model sense
  is now "the reconciler" across the Skill, std, and the examples.
- The example corpus is harness-neutral: authored intent plus the
  observable behaviour a harness must preserve. Quick Start examples
  carry the Skill's own flow (prose compile → promote → prose serve)
  and say what serve waits for; expanded-topology examples state what
  src/ ships and what a harness's expansion produces from it.
- The Skill's run-flow docs agree with each other and with the spec:
  serve defines the manifest promotion step, compile names what
  ir-v0.md emits, ir-v0.md is the authoritative IR contract, and the
  spec lists compile/serve/status as in-session verbs that a conforming
  harness may deliver durably outside the session.
- A harness-surface conformance test keeps product tokens out of the
  Skill, spec, std/co, and root docs, outside the README's Harnesses
  section and the Skill changelog.

Skill 0.16.0; runtime_contract stays 2. The Skill changelog records the
migration so prose upgrade can route workflows that used prose react.
2026-08-25 21:21:03 -04:00
Jose Montes de Oca ce98a96053 docs: refresh the README banner and tagline
A light refresh of the README header and the project tagline.

- New README banner image (`assets/readme-header.png`); trims the caption now that the banner carries it.
- Brings the tagline in line across the README, plugin manifests, spec, and onboarding: "Stop scripting agents. Declare them."
- Removes the unused legacy `readme-header.svg` (nothing references it).
- Small `assets/README.md` tidy.

No functional changes.
2026-06-15 19:01:37 -04:00
irl-dan 6cb6e45aa8 docs(spec): parity follow-ups from code-grounded verification
Repairs surfaced by an independent code-grounded verification pass. 00: cost is observed-not-budgeted (not 'resource budget the gates are constrained by'); Tenet 2's intelligence layer lists all three model-authored compile artifacts (Forme topology + canonicalizer + postcondition validators). 01: state the `### Invariants` actuation-boundary ideal in Part I (with a bridge note it is authored-only today); gateway compiles to a trigger the reactor serves (not `prose serve`); migration line corrected (`co` has no `kind: responsibility`; std has 3); note the language-root `receipts.jsonl` vs the harness `receipts.json`. 02: launch DoD no longer implies version-equality; new Part III §10 (declared-capability resolution + serve auth + async storage seam) so every Honest-Limit has a forward item. 03: signer rendered as shipped (`scheme: "none"`, no `kind:"null"|"signed"`); Part II honest that `### Tools`/`### Environment`/`### Skills` are name-only and not harness-consumed; `as_of` added to the gap-cluster-2 receipt set; gateway `### Schedule` forward item; no `reactor test` subcommand.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-07 13:28:16 -07:00
irl-dan 4e8979c9f4 docs(spec): bring Part I/II/III into parity (ideal / actual / path)
Reconcile the OpenProse spec so Part I states the implementation-agnostic ideal, Part II matches shipped code, and Part III is a real actual->ideal path. Memo key stated as the 3-tuple (shipped 2-tuple as a bridge note); ideal receipt schema gains as_of + failure reason + author-addressing; precedence-stack scope and commit-gate pillar reconciled across 00/02/03; prose-CLI and `### Criteria` residue removed from the ideal; Part III re-baselined off shipped reality (the corpus migration retired as done) with the receipt-shape and actuation gap-cluster items added so every Part II limit has a forward item.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-07 13:10:24 -07:00
dan ddc7736ec5 Deprecate prose-cli npm publish flow + park the eval suite (green the tree) (#122)
* fix(cli): typecheck repository-reactor-bridge test against branded Receipt fields

#106 hard-branded the reactor Receipt identity fields (node: NodeId,
contract_fingerprint / fingerprints: Fingerprint) and added this bridge test in
the same commit, constructing the Receipt fixture from raw strings — so the test
was born failing tsc. CLI Release Check only runs on tools/cli + release-script
paths and main has no required checks, so #106 merged with the typecheck red and
it stayed hidden (no cli-path change re-ran the check) until a release-infra PR
surfaced it.

Author the fixture with the same brand constructors the production bridge uses
(asNodeId / asFingerprint from @openprose/reactor/internals). The constructors are
identity-at-runtime brands, so behavior is unchanged: the affected test passes
10/10 and tsc is clean.

Note: this unmasks a SEPARATE pre-existing failure, also from #106 — the
repository-ir compiler fixtures were regenerated with kind
"openprose.compile-phase-ir" while validateRepositoryIr and its tests still expect
"openprose.repository-ir" (23 failing tests). That is a distinct IR-reconciliation
fix, tracked separately.

* fix(cli): restore repository-ir v0 validator tests with CLI-owned fixtures

#106 migrated the SKILL compiler's golden outputs (repo-root
tests/open-prose/compiler/) from repository-ir v0 to compile-phase-ir v2, but the
CLI's own compile path (compileRepositorySource -> validateRepositoryIr ->
repositoryIrToTopology) stayed v0. repository-ir.test.ts and
responsibility-status.test.ts borrowed those golden files across the package
boundary, so the v0 validator was being fed v2 inputs -> 21 failing tests.

Give the CLI's v0 validator tests their OWN v0 fixtures under
tools/cli/tests/prose/fixtures/repository-ir/ (recovered from f12dcda~1, the last
commit before the migration; the CLI compiler and validator are unchanged since,
so they still describe the current contract). The two compilers no longer share
fixtures: the SKILL compiler's compile-phase-ir fixtures are validated by
compiler-ir.test.ts; these repository-ir v0 fixtures are the CLI's. A README in the
fixtures dir documents the split and the migration path.

No validator or compiler change (not papering over) — the v0 validator is simply
fed correct v0 inputs. tools/cli suite: 573 -> 594 passing; the v0 validator suite
is 30/30. The 2 remaining failures (quickstart's dangling deleted-demo reference
and the agent-observatory example's missing id) are unrelated non-IR #106 fallout,
tracked separately.

* chore: deprecate prose-cli npm publish flow; park the eval suite

The `prose` CLI (@openprose/prose-cli) is deprecated in favor of the reactor
harness (@openprose/reactor + @openprose/reactor-cli) and the SKILL/plugin. This
removes its npm publish flow (it will be marked deprecated on npm manually) and
parks the eval harness out of the working tree.

Rip out the prose-cli publish flow:
- delete .github/workflows/{release,cli-release-check,cli-real-harness-smoke}.yml
  and scripts/release-preflight.sh (the "OpenProse Release" publisher + its
  preflight/checks).
- drop the `cli` track from .version-bump.json (only the skill/plugin track
  releases here now) and the prose-cli sections from RELEASE.md.
- decouple the root build/test/lint scripts from @openprose/prose-cli.

Park the eval suite (it is rethought from scratch in the reactor backlog):
- remove the judge-era harness tools/cli/src/evals (45) + tools/cli/tests/evals
  (18) and spec/04-Evals.md; they are copied verbatim into the planning
  backlog-reactor for rehydration, and the methodology is synthesized there.
  The harness was import-isolated (no code imported it); removal breaks nothing.
- fix the now-dangling spec/02 cross-reference to 04-Evals.md.
- remove the obsolete quickstart.test.ts (it read a #106-deleted demo test file).

The reactor packages, the new reactor-native tools/eval-harness, the skill
examples gate, and plugin-manifest are unaffected; prose-cli still typechecks.
2026-06-04 21:52:00 -07:00
dan f12dcda4d8 Release: the OpenProse Reactor harness (engine + CLI + devtools) — 0.3.0 ideal API surface (#106)
Ships @openprose/reactor 0.3.0, @openprose/reactor-cli 0.2.0, @openprose/reactor-devtools 0.2.0: the Reactor harness (compile-once-intelligent then dumb reconciler, content-addressed receipts, cost scales with surprise) with the distilled ideal public API — curated front door, full @openai/agents passthrough, one typed handle, one Substrate, unified observe, branded ids, and additive forward seams for the fixpoint.
2026-06-02 14:06:56 -07:00
irl-dan d65a5892a9 spec: sync canonical spec from index (Tenet 7 + reconciliation)
Establishes prose/spec as the canonical home for the OpenProse spec,
current as of the index working state — Tenet 7 (one bounded run, one
session; the DAG composes) plus the Language / Harness / Pattern / Evals
reconciliation. index/spec becomes a pointer to here.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-05-28 15:56:28 -07:00
dan 119a125002 docs: publish reactor spec reconciliation (#99) 2026-05-22 19:38:50 -07:00