Skip to content
Merged
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
7 changes: 5 additions & 2 deletions ROADMAP.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,11 @@
- [x] Open initial protocol RFCs for discussion
- [x] Add executable schema and cross-file conformance baseline
- [x] Add positive and negative protocol fixtures
- [ ] Complete the first public v0.1 review window (not before 2026-07-20)
- [ ] Revise or accept RFC-0001 through RFC-0003
- [x] Complete the first public v0.1 review window (2026-07-13 to 2026-07-26)
- [x] Record the first decisions: accept RFC-0001; move RFC-0002 and RFC-0003
to Revision
- [ ] Complete reviewed revisions and accept RFC-0002 and RFC-0003
- [ ] Publish an immutable v0.1 preview tag and versioned schema-digest manifest
- [ ] Publish OpenAPI preview
- [ ] Publish TypeScript SDK preview
- [ ] Publish Go SDK preview
Expand Down
40 changes: 28 additions & 12 deletions docs/protocol-preview-status.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
# Protocol Preview Status

FNB's public protocol preview is now in **v0.1 Draft**. It is intentionally
smaller than the private product implementation.
FNB's public protocol preview remains a **v0.1 Draft**, with its first review
window completed. It is intentionally smaller than the private product
implementation.

## Published in this preview

Expand All @@ -17,18 +18,33 @@ smaller than the private product implementation.
- Real user data or examples derived from real conversations
- Unimplemented research objects presented as stable protocol contracts

## First review outcome

The first review opened on 2026-07-13 and completed on 2026-07-26:

- RFC-0001 is **Accepted** for individually attributable BlockDraft decisions.
- RFC-0002 is in **Revision** pending downstream invalidation and deletion-safe
audit semantics.
- RFC-0003 is in **Revision** pending portable permission snapshots and
source-invalidation semantics.

The absence of external comments does not turn unresolved questions into stable
protocol contracts. The Steward decision records accepted scope explicitly and
keeps unresolved semantics in Revision.

## Next gates

1. Complete [public review #5](https://github.com/FNB2026/fnb-open/discussions/5)
of names, identifiers, lifecycle states, provenance, and invalidation semantics
2. Keep schema, example, cross-reference, and negative-fixture validation green
3. Revise or accept RFC-0001 through RFC-0003 after the review window
4. Publish a deliberately narrow OpenAPI preview
5. Generate a TypeScript SDK preview from reviewed public schemas
1. Keep schema, example, cross-reference, and negative-fixture validation green
2. Complete reviewed revisions of RFC-0002 and RFC-0003
3. Freeze accepted schema identifiers with an immutable Git tag and publish a
versioned digest manifest
4. Publish a deliberately narrow, schema-first OpenAPI preview
5. Generate a TypeScript SDK preview from the reviewed OpenAPI and public schemas

The current review opened on 2026-07-13 and cannot close before 2026-07-20.
Private product changes are not copied into this preview while they remain
uncommitted or implementation-specific.
uncommitted, unreviewed, or implementation-specific. Authentication, workers,
ledger, storage, IM/WebSocket, administration, and deployment remain outside the
first OpenAPI preview.

Draft schemas may change incompatibly until an RFC promotes them to a stable
version.
Draft schemas may change incompatibly until their governing RFCs are Accepted
and an immutable release freezes their identifiers and digests.
15 changes: 10 additions & 5 deletions rfcs/0001-confirmed-block-formation.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,9 @@

## Status

Discussion — [public review #5](https://github.com/FNB2026/fnb-open/discussions/5),
opened 2026-07-13; decision no earlier than 2026-07-20
Accepted — Steward decision recorded 2026-07-26 after
[public review #5](https://github.com/FNB2026/fnb-open/discussions/5),
opened 2026-07-13 and completed 2026-07-26

## Summary

Expand Down Expand Up @@ -51,7 +52,11 @@ This is the first public draft and may change during v0.1 review.
Automatic Block creation was rejected because it turns model output into fact
without user agency.

## Open Questions
## Decision

- Should low-risk local-only drafts support batched confirmation?
- What minimum rejection record is required for conformance?
- Batched confirmation is out of scope for v0.1. Each BlockDraft requires an
individually attributable confirm, reject, or replace decision.
- The minimum conforming rejection record is a CorrectionPatch targeting the
BlockDraft with `operation: reject`, `actor_id`, a non-empty `reason`, and
`created_at`. The rejected Draft remains auditable and must not produce a
Block.
18 changes: 13 additions & 5 deletions rfcs/0002-explainable-correction-loop.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,10 @@

## Status

Discussion — [public review #5](https://github.com/FNB2026/fnb-open/discussions/5),
opened 2026-07-13; decision no earlier than 2026-07-20
Revision — Steward decision recorded 2026-07-26 after
[public review #5](https://github.com/FNB2026/fnb-open/discussions/5);
downstream invalidation and deletion-safe audit semantics require another
reviewed revision before acceptance

## Summary

Expand Down Expand Up @@ -50,7 +52,13 @@ This is additive to the v0.1 draft schemas.
A single free-text feedback field was rejected because it cannot express or
audit precise state transitions.

## Open Questions
## Revision Requirements

- How should corrections propagate to downstream derived objects?
- Which redaction metadata may remain visible after deletion requests?
- Define implementation-neutral propagation semantics for downstream derived
objects, including how invalidation is represented and audited.
- Define the minimum deletion-safe audit metadata that may remain after a
redaction or deletion request.
- Add positive and negative conformance fixtures for the selected semantics.

Private implementation experiments are not normative until these requirements
are represented in the public schemas, fixtures, and validator.
19 changes: 14 additions & 5 deletions rfcs/0003-source-provenance-and-permissions.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,10 @@

## Status

Discussion — [public review #5](https://github.com/FNB2026/fnb-open/discussions/5),
opened 2026-07-13; decision no earlier than 2026-07-20
Revision — Steward decision recorded 2026-07-26 after
[public review #5](https://github.com/FNB2026/fnb-open/discussions/5);
portable permission snapshots and source-invalidation semantics require another
reviewed revision before acceptance

## Summary

Expand Down Expand Up @@ -50,7 +52,14 @@ This formalizes fields already present in the v0.1 draft schemas.
Embedding source text directly in every derived object was rejected because it
duplicates sensitive data and weakens revocation.

## Open Questions
## Revision Requirements

- How should a portable permission snapshot be represented?
- When should source invalidation redact versus merely mark a derived object stale?
- Define a portable permission snapshot that does not expose authentication or
storage internals.
- Distinguish source redaction, deletion, staleness, and invalidation without
broadening access to retained provenance.
- Define deterministic propagation into derived objects and add positive and
negative conformance fixtures.

Private implementation status names and cascade behavior are non-normative
until they are represented in the public schemas, fixtures, and validator.
12 changes: 12 additions & 0 deletions specs/v0.1/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,18 @@
The v0.1 protocol remains unstable. This changelog makes draft-breaking changes
visible during public review.

## 2026-07-26 — First review decision

- Completed the first public v0.1 review window.
- Accepted RFC-0001 with individually attributable decisions and an explicit
minimum rejection record.
- Moved RFC-0002 and RFC-0003 to Revision until downstream invalidation,
deletion-safe audit metadata, portable permission snapshots, and
source-invalidation semantics are represented in public artifacts.
- Kept private implementation experiments non-normative and deferred the
immutable tag, digest manifest, OpenAPI preview, and SDK generation until the
remaining protocol semantics are reviewed.

## 2026-07-13 — Reproducible publication gate

- Canonically formatted all public schemas with two-space JSON indentation.
Expand Down
Loading