SOA as document: replace export with publish workflow
Statements of Applicability are no longer exported as one-off PDFs. Instead, each SOA owns a persistent document that accumulates versions over time, following the same publish/approve lifecycle as authored documents. Publishing without approvers publishes immediately; publishing with approvers creates a draft pending approval via the existing quorum system. SOAs can also store default approvers that are pre-populated in the publish dialog. The SOA is removed from the snapshot system — applicability statements are now queried directly (snapshot_id IS NULL) rather than through snapshot copies. A standalone migration script (cmd/migrate-soa-snapshots-to-documents) converts existing SOA snapshots into documents with proper ProseMirror content, preserving version history and approval decisions. Signed-off-by: Sacha Al Himdani <sacha@getprobo.com>
This commit is contained in:
@@ -20,6 +20,7 @@ import (
|
||||
"go.probo.inc/probo/pkg/cmd/soa/create"
|
||||
"go.probo.inc/probo/pkg/cmd/soa/delete"
|
||||
"go.probo.inc/probo/pkg/cmd/soa/list"
|
||||
"go.probo.inc/probo/pkg/cmd/soa/publish"
|
||||
"go.probo.inc/probo/pkg/cmd/soa/statement"
|
||||
"go.probo.inc/probo/pkg/cmd/soa/update"
|
||||
"go.probo.inc/probo/pkg/cmd/soa/view"
|
||||
@@ -36,6 +37,7 @@ func NewCmdSoa(f *cmdutil.Factory) *cobra.Command {
|
||||
cmd.AddCommand(view.NewCmdView(f))
|
||||
cmd.AddCommand(update.NewCmdUpdate(f))
|
||||
cmd.AddCommand(delete.NewCmdDelete(f))
|
||||
cmd.AddCommand(publish.NewCmdPublish(f))
|
||||
cmd.AddCommand(statement.NewCmdStatement(f))
|
||||
|
||||
return cmd
|
||||
|
||||
Reference in New Issue
Block a user