---
# System prepended metadata

title: 'Twitter Sprint Check-in #2 活動頁 & 公告'
tags: [學期 3, Twitter]

---

###### tags: `學期 3` `Twitter`

# Twitter Sprint Check-in #2 活動頁 & 公告

--- 

# Before Event

## 活動頁面

### subject: 12/05 Twitter Sprint Check-in #2

#### 12/05 Twitter Sprint Check-in #2 活動資訊

<div style="background: #ececec; padding: 15px; margin-bottom: 10px; border-radius: 10px ; min-width:450px; width:fit-content; font-weight: bold;">
日期與時間：12/5 (日) 13:30 - 15:00 <br>
參加連結：<a href=" https://us02web.zoom.us/meeting/register/tZAsdO-uqT0sG9EIpIJcRsYYZaX-59mjmCJF" target="_blank">https://us02web.zoom.us/j/84136676615</a><br>
會議密碼：861386<br>

<a class="btn btn-normal" target="_blank" href="https://calendar.google.com/calendar/u/0/r/eventedit/copy/YTh1M29qaDFrbHZzM2pia2I4OXBkN2JtcWMgczdpYmk3OHUxZ2NuYTRxOWhtbzc4cGxoMjhAZw">將行程添加到 Google 日曆</a>
</div>



#### 行前準備

- 請小組完成作業 [Check-in #2](https://lighthouse.alphacamp.co/courses/80/assignments/3690) 的提交，若有個別狀況請參考 [公告說明](https://lighthouse.alphacamp.co/announcements/2124)，與教練團隊聯繫
- 🌟 有意與技術主管交流的小組，記得申請 [團隊 Showcase](https://lighthouse.alphacamp.co/courses/80/units/26626)，把握機會向技術主管展現小組成果，獲取主管的點評與回饋


---

## 公告 
### subject:【今晚 19:30 活動提醒】08/01 Twitter Sprint Check-in #2


Twitter 小組開發開賽，即將過一半！明天將是基本功能 Sprint 的第二場 Check-in！

別忘記：

- 提交 [Sprint Check-in #2 作業](https://lighthouse.alphacamp.co/courses/80/assignments/3690)
- 參與與技術主管的第二場 Check-in 活動：

祝 開發順利！

<div style="width:100%"><img style="max-width:1000px; width:100%;" src="https://assets-lighthouse.s3.amazonaws.com/uploads/image/file/4416/banner_2.001.jpeg"></div>

---

# After Event

## 活動頁面

<!-- ### subject: Twitter Sprint Check-in #2 - 2022/1 月班會後精華

本次 Sprint Check-in 共分為三個段落：

- Sprint Check-in #2 Highlight
- Q&A - 規格釐清
- 理解 Sprint Check-in #3 目標期待

#### Q&A - 規格釐清

很開心看到同學們主動提出不同的內容，進行交流：

共有以下幾點釐清：

1. **環境變數 -- 推送 PR 的環境參數需加上 `JWT_SECRET=alphacamp`**
    - 提問：在把 PR 推上 upstream 時發現 JWT Secret 推送問題 (原提問請參考 [這串討論](https://lighthouse.alphacamp.co/courses/80/units/19677))
    - 解法：在 `.travis.yml` 設定裡，增加環境參數，加入 `JWT_SECRET` （如下）<br> 
<pre class="prettyprint"> # 設定參數(Travis CI 會按照參數分別執行)
env:<br> - NODE_ENV=travis JWT_SECRET=alphacamp
</pre>

補充說明：需要用 Heroku 佈署的經驗來想像 Travis，平常我們在本地會直接用 .env 來存放環境變數，而 Heroku 佈署後，則需要去 Heroku 後台再設定環境變數；而同學無法進入 Travis 後台，因此在這裡在發 PR 前，需要將 .env 的必要參數加入到 Travis 設定檔中，才能讓專案在 Travis 模擬環境中順利執行。

2. **UI 確認 -- 推文數量與推文被 like 的數量分別指？**
    - 提問：想問 admin 取得所有使用者列表中，每個使用者 UI 中顯示的 like 和 reply 數量，是指使用者本身 like 及 reply 的總數還是 被 like 及 reply 的總數？
    - 回應：請參考圖示
        - 「推文數量」指使用者的 Tweet 累積總量
        - 「推文被 like 的數量」指使用者的 Tweet 獲得 like 的累積總量<br><div style="width:100%"> <a href="https://assets-lighthouse.alphacamp.co/uploads/image/file/18319/Screenshot_2021-12-06___3.45.41.png" target="_blank"><img style="max-width:700px;width:100%;" src="https://assets-lighthouse.alphacamp.co/uploads/image/file/18319/Screenshot_2021-12-06___3.45.41.png"></a></div>

3. **規格確認 -- 使用者登入時，需使用 account + password**
    - 提問：[教案的專案指定規格-角色權限](https://lighthouse.alphacamp.co/courses/80/units/19661)的登入頁面欄位，與[設計稿](https://www.figma.com/file/WfushzZVXyVwQK0SafjTmB/ACCapstone%3A-Twitter-Wireframe?node-id=0%3A1)上的登入頁欄位，畫面長得不太一樣。（輸入欄位一個是account 、一個是email)
    - 回覆：
        - user story 中未明定使用者登入的必填欄位，有不一致的狀況。在設計稿上呈現 email + password，而測試檔為 account + password。
        - 因此需請同學統一使用 account + password 做為登入欄位 (就是「使用者可以用帳號 (account) 和密碼登入網站」)
        - `特別注意`：此釐清將影響 [User srory](https://lighthouse.alphacamp.co/courses/80/units/19668), [DoD 項目 -- 提供測試帳號](https://lighthouse.alphacamp.co/courses/80/units/26625) 與 [設計稿](https://lighthouse.alphacamp.co/courses/80/units/19675) 這三份文件。其中 DoD 亦影響小組進入評審的權益，請務必注意！

4. **規格確認 -- 個人頁的推文回覆，是否可以顯示自己回覆的推文**
    - 提問：[貼文留言] 如果在個人頁的推文回覆，如果是回覆自己的推文，需要顯示出來嗎？
    - 回覆：根據測試檔設計，僅需顯示個人推文，推文回覆則無須顯示。

5. **規格討論 -- 使用者可以是否可以對自己的貼文按讚**
    - 提問：[使用者互動] 自己可以對自己的推文按讚嗎 😅
    - 回覆：在原本的設計裡面並沒有規範到這項，這個問題是屬於可以討論的，只要團隊間達成共識就可以。

6. **UI 確認 -- 編輯個人資料頁面的 ❌ 意涵**
    - 提問：編輯個人資料頁面的 banner 上面，有叉叉的 icon，是代表什麼意思。
    - 回覆：代表使用者可以刪除 banner 圖片，在刪除後 banner 區塊則為空白。

6. **UI 確認 -- 設計稿內提示通知沒有特別標出在畫面上顯示的位置，該如何放置？**
    - 提問：
        - 設計稿內提示通知沒有特別標出在畫面上顯示的位置，User Story 上提供的 Bootstrap參考也是沒有標特定位置。所以這樣是組內決定好就 OK 嗎？
    - 回覆：是的，目前針對只有指定元件樣式，並區分 alert & notification ，但沒有標記特別位置。因此團隊間達成共識就可以。


7. **測試檔案 truncate 相關問題**
    - 提問 (原提問請參考 [這串討論](https://lighthouse.alphacamp.co/courses/80/units/19659?comment_id=151453))
        - `A`: 是否需將 truncate: true 改成 truncate: { cascade: true } ？ (參考 [維元講解影片](https://lighthouse.alphacamp.co/courses/80/units/26036)）
        - `B`: delete api/admin/tweets/:id 的測試，在 create tweet 資料的時候 id 會累加，會導致在後段做 assess 的時候，抓不到 id 數值，建議調整
        - `C`: 測試檔裡面很多不符合 javascript standard styling，是否可以修正？
    - 回覆：
        - 針對 `A` 與 `B` 情境，與開發人員確認問題如下：
            - 在新版本的 MySQL 中調高了對 truncate 的限制，在 model 有設定 references 的情況下，現在的 ORM 如 sequelize 已無法再使用 `truncate: true` 的方式來執行 truncate，即使改寫成 `truncate: { cascade: true }` 仍然無法 truncate
            - 而「無法 truncate 的問題」會在觸發在「資料雖然可以清空，但 table 不會重設，因此 id 繼續累積」([reference](https://github.com/sequelize/sequelize/issues/13286))
            - 此問題會影響到的同學：在建立 Model 時有加入 references 設定的人
            - 解法：
                - 開發人員會在 `12/8` 發出新的上游 PR，針對需要 truncate 的相關測試，在後處理中強制重設 foreign key
                - 上游更新前的臨時解法：可參考 Heidi 同學作法，在執行本地測試檔時，手動寫入 id，以暫時確認「是否 id 問題搞定後，這條測試就會過」 (但不要建立 commit)
        - 針對 `C` ，同意同學們可以更改 styling，請為 formatting 動作單獨建立 commit




#### Reference

##### 影片

<div style="position: relative; width: 100%; height: 0; padding-bottom: 56.25%;"> 
    <iframe style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;" src="https://player.vimeo.com/video/683237402?h=b3d035bd68&amp;badge=0&amp;autopause=0&amp;player_id=0&amp;app_id=58479" frameborder="0" allowfullscreen>
    </iframe>
</div>

##### 投影片


<div style="position: relative;width:100%;height:0;padding-bottom: 56.25%;"><iframe style="position:absolute;top:0;left:0;width:90%;height:90%" src="https://docs.google.com/presentation/d/e/2PACX-1vSRGcQU8_HYlplNllhSyIpXszK05hXpRKfpTkNZQhvfnVuDJ4imavBS8UFUKpOaWpI1ezJL0RwpjF9u/embed?start=false&loop=false&delayms=3000" frameborder="0" allowfullscreen="true" mozallowfullscreen="true" webkitallowfullscreen="true"></iframe></div>
 -->



---
## 公告

### subject: 06/12 Check-in #2：小組進度 update & 規格釐清 - highlight

很開心看到同學們完成第二次的 Sprint Check-in，各組的開發進度大多在進度上。

- 本次 Sprint Check-in 共分為四個段落：

    - Sprint Check-in #2 Highlight
    - 小組 Showcase
    - Q&A
    - 理解 Sprint Check-in #3 目標期待


<!-- - 規格的釐清與討論：

    - 設計稿 -->





現在就去看看會後錄影 & 規格釐清紀錄吧 ➡️ [Twitter Sprint Check-in #2 - 2023/04 月班會後精華](https://lighthouse.alphacamp.co/courses/80/units/28952)

<div style="width:100%"><img style="max-width:1000px; width:100%;" src="https://assets-lighthouse.s3.amazonaws.com/uploads/image/file/4416/banner_2.001.jpeg"></div>


--- 

### subject: Twitter Sprint Check-in #2 - 2023/02 月班會後精華

本次 Sprint Check-in 共分為四個段落：

- Sprint Check-in #2 Highlight
- 小組 Showcase
- Q&A
- 理解 Sprint Check-in #3 目標期待

<!-- #### Q&A - 規格釐清

-  **設計稿**
    - 目前在設計稿中的後台登入，帳號部分顯示為 email，這邊為設計稿誤植（如圖） 後台登入請同學仿照前台使用帳號（account）登入

<div style="width:100%; text-align: center;">
<img style="width:50%;" src="https://assets-lighthouse.alphacamp.co/uploads/image/file/21214/__.PNG">
</div>
     -->
<!-- 2. **前端是否需要 PR 給 AC**
    - 回覆：只有後端需要 PR 給 AC


3. **工具版本問題**
    - 提問：這次專案使用工具的版本也算在規格的範圍內嗎？
    - 回覆：使用的開發工具的版本沒有限定

4. **User Stories：種子資料設計**
    - 提問：種子資料的一般使用者原本是規定五個，如果因需求要建立超過五個以上一般使用者，算不算違反 User story?
    - 不算違反 User story，種子資料**至少**有五個即可。 -->

#### Reference

##### 影片

<div style="position: relative; width: 100%; height: 0; padding-bottom: 56.25%;"> 
    <iframe style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;" src=""https://player.vimeo.com/video/811910985?h=287a85e88f&amp;badge=0&amp;autopause=0&amp;player_id=0&amp;app_id=58479" "  frameborder="0" allowfullscreen>
    </iframe>
</div>

##### 投影片


<div style="position: relative;width:100%;height:0;padding-bottom: 56.25%;"><iframe style="position:absolute;top:0;left:0;width:90%;height:90%" src="https://docs.google.com/presentation/d/e/2PACX-1vSRGcQU8_HYlplNllhSyIpXszK05hXpRKfpTkNZQhvfnVuDJ4imavBS8UFUKpOaWpI1ezJL0RwpjF9u/embed?start=false&loop=false&delayms=3000" frameborder="0" allowfullscreen="true" mozallowfullscreen="true" webkitallowfullscreen="true"></iframe></div>
