diff --git a/cli/spcli/sectors.go b/cli/spcli/sectors.go index 5b8bf4139..1b230ce04 100644 --- a/cli/spcli/sectors.go +++ b/cli/spcli/sectors.go @@ -11,6 +11,7 @@ import ( "sort" "strconv" "strings" + "sync" "time" "github.com/fatih/color" @@ -109,6 +110,27 @@ func SectorsStatusCmd(getActorAddress ActorAddressGetter, getOnDiskInfo OnDiskIn fmt.Printf("OnTime:\t\t%v\n", status.OnTime) fmt.Printf("Early:\t\t%v\n", status.Early) + var pamsHeaderOnce sync.Once + + for pi, piece := range status.Pieces { + if piece.DealInfo == nil { + continue + } + if piece.DealInfo.PieceActivationManifest == nil { + continue + } + pamsHeaderOnce.Do(func() { + fmt.Printf("\nPiece Activation Manifests\n") + }) + + pam := piece.DealInfo.PieceActivationManifest + + fmt.Printf("Piece %d: %s %s verif-alloc:%+v\n", pi, pam.CID, types.SizeStr(types.NewInt(uint64(pam.Size))), pam.VerifiedAllocationKey) + for ni, notification := range pam.Notify { + fmt.Printf("\tNotify %d: %s (%x)\n", ni, notification.Address, notification.Payload) + } + } + } else { onChainInfo = true } diff --git a/cmd/lotus-miner/sectors.go b/cmd/lotus-miner/sectors.go index a3ffb8335..d0c13d333 100644 --- a/cmd/lotus-miner/sectors.go +++ b/cmd/lotus-miner/sectors.go @@ -310,6 +310,13 @@ var sectorsListCmd = &cli.Command{ } } + var pams int + for _, p := range st.Pieces { + if p.DealInfo != nil && p.DealInfo.PieceActivationManifest != nil { + pams++ + } + } + exp := st.Expiration if st.OnTime > 0 && st.OnTime < exp { exp = st.OnTime // Can be different when the sector was CC upgraded @@ -324,6 +331,8 @@ var sectorsListCmd = &cli.Command{ if deals > 0 { m["Deals"] = color.GreenString("%d", deals) + } else if pams > 0 { + m["Deals"] = color.MagentaString("DDO:%d", pams) } else { m["Deals"] = color.BlueString("CC") if st.ToUpgrade {