feat(clade): 8-phase lifecycle status + CLADE- autolink resolver - #38
Merged
Conversation
Adds the lifecycle layer on top of the clade taxonomy (ADR 0006). Identity (uuid) and status (phase) are separated: uuid immortal, phase a mutable pointer; transitions legal in both directions (extinct->active is valid). - repo.vcl 1.1.0: status enum -> 8 phases (reserved incubating active dormant | merged superseded archived extinct); + status_since, present (derived), aliases[], merged_into, superseded_by, successors[], ended, status_history[]. - clade.vcl 1.1.0: aggregate counts realigned (present/active/dormant/ended). - CLADE.a2ml: [status] block exemplar (this repo's own declaration). - clade-hygiene: CLADE-004 (phase present), CLADE-005 (phase valid). - worker /c/:binomial: resolves the estate CLADE-<binomial> autolink (302 to portal, ?format=json for data). Additive; node --check clean. Suite not run (no node_modules in this checkout). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds the lifecycle layer on top of the clade taxonomy (ADR 0002 fixed where a repo sits; this fixes what life-phase it's in). Part of the owner-ratified clade/autolinks package.
Design principle
Identity and status are separate layers:
uuidis immortal;phaseis a mutable pointer to the current life-phase. Transitions are legal in both directions — no phase is terminal (extinct -> activeis a valid "Gitassic Park" resurrection on the same uuid). A rename is not a phase change: the old binomial goes toaliases[], uuid+phase untouched.Changes
verisim/schema/repo.vcl1.1.0 — status enum replaced with the 8 phases (reserved incubating active dormant|merged superseded archived extinct); addsstatus_since,present(derived here/not-here),aliases[],merged_into,superseded_by,successors[],ended, and append-onlystatus_history[].verisim/schema/clade.vcl1.1.0 — aggregate tensors realigned (present_count/active_count/dormant_count/ended_count)..machine_readable/CLADE.a2ml—[status]block exemplar (this repo's own declaration is the reference).contractiles/must/clade-hygiene.a2ml— CLADE-004 (phase present), CLADE-005 (phase valid).worker/src/index.js— newGET /c/:binomialroute: resolves the estate-wideCLADE-<binomial>custom autolink (302 to the portal for humans;?format=jsonfor bots). Additive route;node --checkclean.stale->dormant/experimental->incubating/complete->activemigration of the old enum.Migration note
The previous 5-value enum (
active stale archived experimental complete) is superseded. Existing repos get a[status]backfill via a separate idempotent farm sweep (defaults toactive).Testing
node --check src/index.jspasses. The vitest suite was not run — this checkout has nonode_modules. The route is purely additive and breaks no existing assertion (verified/nope -> 404and endpoint tests by inspection).🤖 Generated with Claude Code