This policy describes the intended v1 compatibility surface for public users. DevLogBus uses semantic versioning for public releases.
The v1 record fields are:
id
time
level
source
message
attrs
Compatibility promises:
attrs remains a JSON object for structured metadata.sourceGroup in attrs remains the public grouping convention.The canonical public levels are:
DEBUG
INFO
WARN
ERROR
Aliases such as warn, warning, err, and dbg may continue to normalize
to canonical levels.
The following endpoints are part of the v1 compatibility surface:
GET /api/health
GET /api/about
GET /api/records
POST /api/records
DELETE /api/records/expunge
GET /api/stream
Compatibility promises:
record events remain JSON encoded DevLogBus records.The newline-delimited JSON envelope protocol is public for SDK and advanced CLI use:
log
subscribe
replay_complete
expunge
expunge_result
error
Envelope field names should remain stable through v1.x.
Packages intended for public use:
github.com/dan-sherwin/devlogbus/pkg/protocol
github.com/dan-sherwin/devlogbus/pkg/client
github.com/dan-sherwin/devlogbus/pkg/sloghandler
github.com/dan-sherwin/devlogbus/pkg/runtime
Compatibility promises:
The C, .NET/C#, Rust, Java/Kotlin, Node/TypeScript, and Python SDKs publish through the public HTTP API.
Compatibility promises:
/api/records.http://127.0.0.1:7423.The C SDK is a small libcurl publisher for the public HTTP API.
Compatibility promises:
devlogbus_record_t, devlogbus_options_t, and the publish functions should
remain source-compatible through v1.x.attrs_json.http://127.0.0.1:7423.The .NET SDK is an HttpClient publisher for the public HTTP API.
Compatibility promises:
DevLogBusRecord, DevLogBusClientOptions, and DevLogBusClient should
remain source-compatible through v1.x.http://127.0.0.1:7423.The Rust SDK is a small dependency-free publisher for the public HTTP API.
Compatibility promises:
Record, ClientOptions, Client, and publish result/error types should
remain source-compatible through v1.x.http://127.0.0.1:7423.The Java/Kotlin SDK is a Java-first JVM publisher for the public HTTP API.
Compatibility promises:
DevLogBusRecord, DevLogBusClient.Options, and DevLogBusClient should
remain source-compatible through v1.x.http://127.0.0.1:7423.The main public commands are:
devlogbus emit
devlogbus tail
devlogbus tui
devlogbus expunge
devlogbus endpoint
devlogbus version
devlogbus buildinfo
Compatibility promises:
Browser Tap compatibility centers on record shape and source grouping:
/api/records.chrome:<host> source names by default.attrs.sourceGroup to group child sources under the owning tab.Chrome permission names and review requirements may change outside DevLogBus control.
When a public v1 feature needs to change, prefer: